🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Proteger archivos sensibles con .htaccess en WordPress

Actualizado el 19 de junio de 2026

¿Sabías que con un simple archivo llamado .htaccess puedes ponerle una puerta blindada a tus archivos más importantes de WordPress? En este artículo, te voy a enseñar paso a paso cómo proteger archivos sensibles con htaccess WordPress, desde conceptos básicos hasta trucos avanzados de seguridad WP. No necesitas ser un hacker ni un programador, solo seguir estas instrucciones claras y amigables.

¿Qué es .htaccess y por qué es clave para tu seguridad?

El archivo .htaccess es un pequeño pero poderoso archivo de configuración que usa el servidor web Apache (el más común en hosting). Piensa en él como un guardia de seguridad que decide quién puede entrar a cada parte de tu sitio. Con unas pocas líneas de código, puedes bloquear acceso directo a carpetas, archivos de configuración, logs y hasta a usuarios malintencionados.

WordPress, por su naturaleza, guarda información sensible en varios archivos: desde la base de datos (en wp-config.php) hasta plugins y temas. Si alguien accede a ellos sin permiso, podría robar tu contenido, inyectar malware o hasta borrar todo tu sitio. Por eso, dominar el htaccess WordPress es una de las habilidades más importantes para cualquier dueño de sitio web.

¿Dónde está el archivo .htaccess?

Por lo general, lo encuentras en la raíz de tu instalación de WordPress (la carpeta donde están wp-admin, wp-content, etc.). Si no lo ves, puede estar oculto (los archivos que empiezan con punto son invisibles en muchos gestores de archivos). Activa la opción "Mostrar archivos ocultos" en tu panel de control o usa un cliente FTP como FileZilla.

[TIP] Si usas Syspanel (antes conocido como HestiaCP, accesible por el puerto 2106), puedes editar el .htaccess desde el gestor de archivos integrado. Busca la carpeta public_html y haz clic derecho para editar.

Los archivos más sensibles que debes proteger

Antes de escribir código, identifiquemos los archivos y carpetas que son como el corazón de tu WordPress. Cualquier acceso no autorizado a ellos puede ser catastrófico.

  • wp-config.php: Contiene las credenciales de la base de datos, claves de seguridad y prefijos de tablas. Es el archivo más crítico.
  • .htaccess (sí, el mismo): Si alguien lo modifica, puede redirigir tu tráfico o bloquear tu acceso.
  • wp-admin: El panel de administración. Debe estar restringido a ciertas IPs o usuarios.
  • wp-includes: Carpeta con funciones esenciales. No debería ser accesible directamente.
  • logs de error: Archivos como error_log o debug.log que muestran vulnerabilidades.
  • archivos de instalación: Como readme.html, license.txt o wp-config-sample.php. Revelan la versión de WordPress.

Cómo proteger archivos sensibles con .htaccess (paso a paso)

Voy a mostrarte las reglas más efectivas. Cada bloque de código lo puedes copiar y pegar en tu archivo .htaccess. Pero antes, siempre haz una copia de seguridad del archivo original. Un error puede dejar tu sitio inaccesible.

1. Bloquear el acceso directo a wp-config.php

Este es el primer paso. Agrega estas líneas al inicio de tu .htaccess (justo después de la línea # BEGIN WordPress si existe, o al principio si no hay nada).

<Files wp-config.php>
    Order Allow,Deny
    Deny from all
</Files>

Esto le dice al servidor: "Nadie puede ver este archivo directamente". Ni siquiera tú desde el navegador. Si necesitas acceder a él, hazlo por FTP o por el panel de control.

[WARNING] No bloquees el acceso a wp-config.php desde el propio WordPress. Esta regla solo afecta peticiones HTTP directas. El sistema interno de WordPress sigue funcionando.

2. Proteger la carpeta wp-admin por IP

Si trabajas desde una ubicación fija (oficina, casa), puedes restringir el acceso a /wp-admin solo a tu dirección IP. Así, aunque alguien tenga tu contraseña, no podrá entrar.

Primero, averigua tu IP pública (puedes usar sitios como "¿Cuál es mi IP?"). Luego, agrega esto:

<Directory /wp-admin>
    Order Deny,Allow
    Deny from all
    Allow from 192.168.1.100  # Cambia por tu IP real
</Directory>

Si tu IP cambia (por ejemplo, si usas datos móviles), mejor no uses esta regla o te quedarás fuera. En ese caso, considera usar un plugin de seguridad que permita IPs dinámicas.

3. Bloquear el acceso a archivos de logs y depuración

Los archivos de log pueden revelar errores internos. Bloquéalos con:

<FilesMatch "\.(log|txt|md|html)$">
    Order Allow,Deny
    Deny from all
</FilesMatch>

Esto protege archivos como debug.log, error_log o readme.html. Si tienes algún archivo .txt que deba ser público (como robots.txt), tendrás que excluirlo de esta regla.

4. Deshabilitar la navegación de directorios

Por defecto, si alguien escribe tudominio.com/wp-content/, puede ver una lista de tus archivos. Eso es peligroso. Añade esta línea:

Options -Indexes

Con esto, el servidor mostrará un error 403 (Prohibido) en lugar de la lista de archivos.

5. Bloquear el acceso a la carpeta wp-includes

Esta carpeta contiene funciones críticas. Nadie debería ver su contenido directamente. Usa:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^wp-includes/(.*)\.php$ - [F,L]
</IfModule>

Esto deniega el acceso a cualquier archivo PHP dentro de wp-includes. Si algún plugin legítimo necesita acceder, puede hacerlo internamente, pero no desde el navegador.

6. Proteger el archivo .htaccess en sí mismo

Parece irónico, pero también debes proteger el protector. Agrega:

<Files .htaccess>
    Order Allow,Deny
    Deny from all
</Files>

Así, nadie podrá leer tu archivo .htaccess desde el navegador.

Ejemplo completo de .htaccess para seguridad

Aquí te dejo un bloque completo que puedes usar como base. Combínalo con las reglas anteriores, pero ajústalo a tus necesidades.

# BEGIN Seguridad WP
<Files wp-config.php>
    Order Allow,Deny
    Deny from all
</Files>

<Files .htaccess>
    Order Allow,Deny
    Deny from all
</Files>

Options -Indexes

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^wp-includes/(.*)\.php$ - [F,L]
</IfModule>

# Bloquear logs
<FilesMatch "\.(log|txt|md)$">
    Order Allow,Deny
    Deny from all
</FilesMatch>

# END Seguridad WP

[INFO] Si tu hosting usa Syspanel, recuerda que el acceso al panel es por el puerto 2106. Allí puedes editar el .htaccess desde el gestor de archivos o desde la sección "Avanzado" > "Editar archivos de configuración".

Errores comunes al editar .htaccess (y cómo solucionarlos)

Es normal que al principio cometas errores. Aquí los más frecuentes y cómo arreglarlos.

  • Error 500 Internal Server Error: Ocurre si hay una sintaxis incorrecta. Revisa que no falten paréntesis o que las líneas estén bien escritas. Si no puedes acceder al sitio, usa FTP para renombrar el .htaccess a .htaccess_old y restaurar el acceso.
  • No veo el archivo .htaccess: Activa "Mostrar archivos ocultos" en tu gestor de archivos o usa un cliente FTP.
  • Las reglas no funcionan: Asegúrate de que tu servidor use Apache y tenga el módulo mod_rewrite activado. En la mayoría de hostings compartidos ya lo está.
  • Me quedé fuera de wp-admin: Si bloqueaste por IP y tu IP cambió, puedes acceder por FTP y eliminar temporalmente la regla de wp-admin.

Preguntas frecuentes (FAQ)

¿Puedo usar estas reglas si mi hosting no es Apache?

No. .htaccess solo funciona en servidores Apache. Si usas Nginx, necesitas configuraciones diferentes (como archivos nginx.conf). Consulta con tu proveedor.

¿Estas reglas afectan el rendimiento de mi sitio?

Mínimamente. Las reglas de .htaccess se leen en cada petición, pero son muy ligeras. Unas pocas líneas no ralentizarán tu web.

¿Necesito un plugin de seguridad además de .htaccess?

Sí, el .htaccess es una capa más, pero no reemplaza un buen plugin de seguridad (como Wordfence o Sucuri). Úsalos juntos para una protección completa.

¿Cómo sé si mi IP es dinámica o estática?

Si tu proveedor de internet te asigna una IP que cambia cada vez que reinicias el router, es dinámica. En ese caso, evita las reglas que bloquean por IP.

¿Puedo proteger archivos en subcarpetas (como /wp-content/uploads)?

Sí. Puedes crear un archivo .htaccess dentro de cada subcarpeta. Por ejemplo, en /wp-content/uploads/ puedes agregar reglas para bloquear la ejecución de PHP.

<Files *.php>
    Deny from all
</Files>

Esto evita que alguien suba un archivo PHP malicioso y lo ejecute desde esa carpeta.

Conclusión: La seguridad de tu WordPress empieza por un buen .htaccess

Proteger archivos sensibles con htaccess WordPress no es complicado, pero sí requiere atención al detalle. Con las reglas que te compartí, puedes bloquear acceso a los archivos más críticos, evitar que se muestren logs y deshabilitar la navegación de directorios. Recuerda siempre hacer una copia de seguridad antes de editar, y si usas Syspanel, accede por el puerto 2106 para gestionar tu hosting.

La seguridad WP es un proceso continuo. Además del .htaccess, mantén actualizado WordPress, usa contraseñas fuertes y considera un firewall de aplicaciones web. Pero con estos pasos, ya has cerrado varias puertas que los atacantes suelen probar.

¿Tienes dudas? Déjalas en los comentarios y te ayudaré. Y si quieres profundizar, en próximos artículos veremos cómo combinar .htaccess con otros métodos de seguridad. ¡Tu sitio te lo agradecerá!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel