Tutoriales de WordPress de Confianza, cuando más los necesitas.
Guía para Principiantes de WordPress
Copa WPB
25 Millones+
Sitios web que usan nuestros plugins
16+
Años de experiencia en WordPress
3000+
Tutoriales de WordPress de expertos

Cómo deshabilitar la navegación de directorios en WordPress

A menudo vemos sitios web que olvidan deshabilitar la navegación de directorios. A primera vista, puede que no parezca gran cosa, pero esta pequeña omisión puede exponer información sensible y poner su sitio en riesgo.

Cuando la navegación de directorios está habilitada, cualquiera puede ver los archivos y carpetas en su servidor. Los hackers pueden usar esta información para identificar debilidades en sus plugins, temas o incluso en su entorno de alojamiento.

Afortunadamente, solucionar este problema es rápido y fácil. Al desactivar la navegación de directorios, agrega una capa adicional de protección y hace que sea mucho más difícil para los atacantes dirigirse a su sitio.

En esta guía, le mostraré los sencillos pasos para deshabilitar la navegación de directorios en WordPress, para que pueda proteger su sitio web y mantener sus datos seguros.

Cómo deshabilitar la navegación de directorios en WordPress

Aquí tiene un resumen rápido de los temas que cubriré en esta guía:

¿Qué hace deshabilitar la navegación de directorios en WordPress?

Deshabilitar la navegación de directorios impide que los visitantes vean una lista de archivos y carpetas en su sitio cuando no hay un archivo de índice disponible. En lugar de mostrar ese directorio sin procesar, el servidor mostrará una página en blanco o un mensaje de error.

Cuando alguien visita tu sitio web, el servidor normalmente entrega un archivo de índice (como index.html o index.php) a su navegador. Si ese archivo falta, muchos servidores recurrirán a mostrar todos los archivos de esa carpeta.

Navegación de directorios habilitada

Este comportamiento se llama exploración de directorios y a menudo está habilitado por defecto en los servidores de hosting.

El problema es que esto expone detalles sensibles sobre la estructura de tu sitio. Los hackers pueden usarlo para buscar vulnerabilidades en plugins, temas o incluso en tu entorno de hosting.

En algunos casos, la exploración de directorios también puede revelar contenido privado o de pago, como descargas de libros electrónicos o cursos en línea, que luego podrían ser copiados sin permiso.

Por eso siempre señalamos este riesgo cuando ayudamos a principiantes. Desactivar la exploración de directorios es un cambio rápido que puede proteger tu sitio y prevenir pérdidas de ingresos innecesarias.

Cómo verificar si la navegación de directorios está habilitada en WordPress

Una forma fácil de comprobar si la exploración de directorios está habilitada en tu sitio web de WordPress es visitando directamente la carpeta /wp-includes/.

Por ejemplo, simplemente ingresa una URL como esta: https://example.com/wp-includes/ en tu navegador.

Asegúrate de reemplazar example.com con el nombre de dominio real de tu sitio web. Esta simple prueba funciona en la mayoría de las instalaciones de WordPress.

Si ves un mensaje de 403 Forbidden o un error similar, entonces la exploración de directorios ya está deshabilitada. Esta es una buena señal, ya que significa que tu sitio web es más seguro.

Se muestra una página 403 prohibida cuando la navegación de directorios está deshabilitada

Si en su lugar aparece una lista de archivos y carpetas, entonces la exploración de directorios está habilitada.

Dejar la exploración de directorios habilitada hace que su sitio web sea vulnerable a ataques maliciosos.

En nuestra experiencia, habilitar la exploración de directorios expone información sensible y aumenta los riesgos de seguridad. Por esta razón, es mejor deshabilitar la exploración de directorios en WordPress para mantener su sitio seguro.

Cómo deshabilitar la navegación de directorios en WordPress

Puede deshabilitar la exploración de directorios agregando una sola línea de código a su archivo .htaccess de WordPress.

Este es un archivo de configuración de servidor potente, por lo que es muy importante hacer una copia de seguridad de su archivo .htaccess antes de realizar cualquier cambio. Una edición incorrecta podría hacer que su sitio sea inaccesible.

Consejo: Usamos Duplicator para hacer copias de seguridad automáticas de todos nuestros sitios web de WordPress. Te permite crear copias de seguridad programadas y bajo demanda. Más importante aún, puedes restaurar fácilmente tu sitio web con un solo clic. Consulta nuestra reseña completa de Duplicator para más detalles.

Puedes acceder a este archivo utilizando dos métodos principales:

Método 1: Editar el archivo .htaccess usando el Administrador de archivos en cPanel

El método más fácil para la mayoría de los usuarios es usar la aplicación Administrador de archivos que se proporciona en el panel de control (cPanel) de tu cuenta de hosting de WordPress.

Primero, inicia sesión en tu cuenta de hosting y abre el Administrador de archivos.

Aplicación del administrador de archivos de cPanel

Navega a la carpeta raíz de tu sitio web, que a menudo se llama public_html.

Ahora, localiza el archivo .htaccess.

Si no puedes verlo, asegúrate de habilitar "Mostrar archivos ocultos" en la configuración de tu Administrador de archivos.

Edición del archivo .htaccess en el administrador de archivos a través de cPanel

Haz clic derecho en el archivo y selecciona 'Editar' o 'Editor de código'.

Método 2: Editar el archivo .htaccess usando un cliente FTP

Alternativamente, puedes usar un cliente FTP para conectarte a los archivos de tu sitio web.

Si es la primera vez, puedes seguir nuestra guía completa sobre cómo conectarte a tu sitio usando FTP.

  1. Una vez conectado vía FTP, navega al directorio raíz de tu sitio (por ejemplo, public_html).
  2. Encuentra el archivo .htaccess.
  3. Descarga el archivo a tu computadora, luego ábrelo en un editor de texto plano como Bloc de notas o TextEdit.
Añadir el código a .htaccess

Una vez que haya abierto el archivo .htaccess para editarlo usando cualquiera de los métodos, simplemente agregue la siguiente línea de código al final del archivo:

Options -Indexes

Se verá algo así:

Se agregó borde a una imagen

Ahora, guarde sus cambios. Si usó un cliente FTP, deberá volver a cargar el archivo .htaccess editado en su servidor, sobrescribiendo el original.

Nota para usuarios de Nginx 📝: Este método de .htaccess se aplica a sitios web que se ejecutan en un servidor web Apache. Si su sitio web está en un servidor Nginx, esta configuración generalmente la maneja su proveedor de hosting a nivel de servidor, y la navegación por directorios suele estar deshabilitada por defecto. Para obtener más información, consulte nuestra comparación de servidores web Apache vs Nginx vs LiteSpeed.

Ahora, si visita la misma URL http://example.com/wp-includes/, obtendrá un mensaje de 403 Forbidden o similar.

Se muestra una página 403 prohibida cuando la navegación de directorios está deshabilitada
Consejo adicional: ¿Prefiere un plugin?

Si no se siente cómodo editando código, un buen plugin de seguridad de WordPress puede encargarse de esto por usted.

La mayoría de los plugins de seguridad de WordPress incluyen una opción de un clic para deshabilitar la navegación por directorios como parte de sus funciones de endurecimiento del sitio web, por lo que nunca tendrá que tocar un solo archivo.

Preguntas frecuentes sobre la deshabilitación de la navegación de directorios

¿Qué es la navegación de directorios y por qué representa un riesgo de seguridad?

La navegación de directorios es una función del servidor que enumera todos los archivos y carpetas dentro de un directorio si falta un archivo de índice (como index.php). Es un riesgo de seguridad porque expone la estructura de tu sitio, incluyendo qué temas y plugins utilizas, a posibles atacantes.

¿Desactivar la navegación de directorios afecta el SEO de mi sitio web?

No, desactivar la navegación de directorios no afecta negativamente tu SEO. Los motores de búsqueda están interesados en tu contenido, no en la estructura de tus archivos. De hecho, mejorar la seguridad de tu sitio web es una señal positiva para los motores de búsqueda.

¿Es mejor usar un plugin o editar el archivo .htaccess?

Ambos métodos logran el mismo resultado. Editar el archivo .htaccess es una solución rápida y única. Usar un plugin de seguridad como Sucuri es ideal para principiantes, ya que maneja esta y muchas otras configuraciones de seguridad con un solo clic, sin necesidad de editar código.

¿Qué pasa si mi sitio de WordPress utiliza un servidor Nginx?

El archivo .htaccess es específico de los servidores web Apache. En los servidores Nginx, la lista de directorios generalmente está deshabilitada por defecto en la configuración principal del servidor. Si sospechas que está habilitada, deberías contactar a tu proveedor de hosting para que la deshabilite por ti.

Lectura adicional para la seguridad de WordPress

¿Quieres mantener tu sitio web de WordPress seguro y libre de errores? Puede que encuentres útiles los siguientes artículos:

Esperamos que este artículo te haya ayudado a aprender cómo deshabilitar la navegación por directorios en WordPress. También te puede interesar nuestra guía definitiva de seguridad para WordPress o nuestra selección experta de los mejores plugins de seguridad para WordPress.

Si te gustó este artículo, suscríbete a nuestro canal de YouTube para obtener tutoriales en video de WordPress. También puedes encontrarnos en Twitter y Facebook.

Descargo de responsabilidad: Nuestro contenido es compatible con el lector. Esto significa que si haces clic en algunos de nuestros enlaces, podemos ganar una comisión. Consulta cómo se financia WPBeginner, por qué es importante y cómo puedes apoyarnos. Aquí está nuestro proceso editorial.

El Kit de herramientas definitivo para WordPress

Obtén acceso GRATUITO a nuestro kit de herramientas: ¡una colección de productos y recursos relacionados con WordPress que todo profesional debería tener!

Interacciones del lector

98 CommentsLeave a Reply

  1. Noté que tengo la navegación de directorios deshabilitada en mi sitio de WordPress, porque obtuve un error 403 al intentar acceder a wp-includes, sin embargo, no recuerdo haber editado mi archivo .htaccess para hacerlo.
    ¿WordPress deshabilita automáticamente la navegación de directorios durante la instalación inicial?

    • A menos que haya habido un cambio reciente, no lo hace por defecto, puede ser la configuración predeterminada de tu proveedor de hosting para htaccess.

      Administrador

      • That’s what I was suspecting also, thanks for clarifying that WordPress doesn’t disable directory browsing by default.
        And the respond too :)

  2. Ni siquiera sabía que existía esta vulnerabilidad. Acabo de revisar la mía y obtuve el error 403, lo que significa que la navegación por directorios está deshabilitada. Gracias.

  3. Gracias por el consejo. Sobre la navegación por directorios, o que la tengo habilitada, el plugin AIO SEO me sigue advirtiendo. Actualmente he resuelto el problema haciendo que las carpetas tengan un archivo index vacío. ¿Es posible tomar esto como una de las posibles soluciones?

  4. Después de editar el archivo htaccess según las pautas proporcionadas, sí veo el mensaje 403 Forbidden para /wp-includes/. Pero no puedo editar ninguna publicación. Al editar una publicación, veo el mismo mensaje 403 Forbidden. ¿Cómo soluciono esto?

  5. Estoy enamorado de este sitio web. Cada día me sorprende cuando leo un nuevo artículo de este sitio web. Afortunadamente, leí este artículo hoy y lo implementé de inmediato.

  6. ¿Entonces está bien tener este código en el archivo .htaccess incluso cuando hay un archivo index.php presente en la carpeta raíz?

    Por favor, responda.

  7. Hola
    ¿esta acción afecta la indexación de páginas en los motores de búsqueda?
    ¿y causa algún problema para las páginas indexadas de mi sitio web de WordPress?
    Gracias

  8. ¡Publicación increíble,

    Solo tengo una pregunta simple, agregué este código y está funcionando, la pregunta es si Google indexa esas páginas, por ejemplo, sitecom/wp-contents/2019/2, ¿Google eliminará esas páginas automáticamente ahora ya que son 404? ¿O debería eliminarlo en Search Console?

    Gracias

  9. ¡Hola!

    Recientemente apliqué esta regla
    y el mismo día la página principal de mi blog
    desapareció del índice de Google.

    ¿Ves alguna conexión?

    • Agregar esto a tu htaccess no debería afectar tu indexación, hay múltiples razones y querrás revisar tu Google Search Console para ver qué dice sobre tu página de inicio.

      Administrador

  10. ¡Gracias por todos los consejos que proporcionas!
    Todavía me pregunto cómo puedes ocultar las carpetas wp-content y wp-include de las fuentes. Odio cuando alguien hace clic derecho y ve el código fuente y puede ver todos mis plugins :). ¿Tienes algún script para esto?
    ¡Gracias de antemano!

    • No tenemos un método recomendado para eso en este momento, la razón más común por la que no puedes ver esas carpetas en las herramientas de desarrollador es la caché del sitio.

      Administrador

  11. ¿Podrías decirme cómo puedo deshabilitar WordPress en una subcarpeta, como mi instalación de WordPress en [www.mydomain.com] y quiero deshabilitar WordPress en [www.mydomain.com/customscript]?

  12. Deshabilité la navegación de directorios, pero aún así alguien puede ver mi directorio cuando usa las herramientas de desarrollador en el navegador Chrome. ¿Cómo lo deshabilito también en eso?

  13. Cuando hago clic en "Guardar cambios" en la página de Configuración de enlaces permanentes, el archivo .htaccess se actualiza, borrando el código "Options -Indexes" que ingresé. El código funciona bien, pero me preocupa eliminarlo sin darme cuenta mientras realizo alguna otra tarea. ¿Hay algún otro cambio en la configuración del panel que deba conocer y que pueda afectar el archivo .htaccess y borrar el código? Gracias

  14. Gran fan de wpbeginner, Optin Monster – Obtuve tantos consejos y trucos útiles en WP – y tengo que decir que el diseño del sitio es simplemente brillante. Y, por supuesto, el contenido aquí es épicamente útil.

    ¡Gracias, chicos!

  15. ¡Hola! No parece funcionar. Si arrastro una imagen a otra página, se abre con un enlace de: example.com/wp-content/uploads/…
    ¿Alguna idea? ¡Gracias!

    • Hola Daniel,

      Tus imágenes y archivos dentro de los directorios aún se pueden acceder directamente. Sin embargo, el servidor no permitirá que alguien navegue directamente por un directorio y vea su contenido.

      Administrador

      • Agradecería si pudieras profundizar en esto. Tuve dificultades al intentar obtener una solución para este problema. Hay algunas ideas basadas en un htaccess que redirige a un archivo php que primero verifica si el usuario ha iniciado sesión. ¿Existe algún plugin que proporcione dicha función?

  16. Disculpa la tardanza en preguntar. Quiero saber, ¿son seguras estas técnicas de usar en cuanto a la puntuación SEO? ¡Espero tu respuesta!

  17. He estado escribiendo este mismo código durante semanas, pero mi directorio sigue siendo visible para los usuarios. ¿Qué estoy haciendo mal? ¿O podría ser que mi sitio todavía se está cargando desde contenido en caché? Todos dicen que funciona, pero mi propia experiencia es diferente. ¡Cualquier ayuda será apreciada! Gracias de antemano por su respuesta.

  18. ¿Hay alguna forma de permitir la visualización de un directorio pero ocultar solo el enlace del Directorio Principal para una página específica? Sería una carpeta compartida en red a la que accederían varias personas, y tendría subcarpetas que aún requerirían una lista del directorio principal. Simplemente no quiero que nadie suba por encima de la carpeta compartida.

  19. Esto no me funcionó. Lo intenté antes y después de #END WordPress y no funcionó. También probé "Options All -Indexes", pero tampoco funcionó.

  20. Muchas gracias, me decepcionó ver imágenes de mi sitio yendo a un directorio padre :0. Esto fue muy útil y funcionó bien.
    Bendiciones – A

  21. Thanks for this tutorial. It worked great for hiding my uploads from anyone just wanting to browse that directory. One question, though. Does this by chance turn off the ability of search engines to browse my website. Sorry if it seems like a dumb question. I am a newbie, after all. :)

  22. Agregué el código Options -Indexes al archivo htaccess, sin embargo, ahora no puedo acceder al sitio, obtengo un error 503. ¿Estoy haciendo algo mal? ¡Necesito ayuda urgentemente! Gracias.

Deja una respuesta

Gracias por elegir dejar un comentario. Ten en cuenta que todos los comentarios son moderados de acuerdo con nuestra política de comentarios, y tu dirección de correo electrónico NO será publicada. Por favor, NO uses palabras clave en el campo del nombre. Tengamos una conversación personal y significativa.