El archivo htaccess es uno de los más importantes en el hosting y es capaz de cambiar la configuración de tu alojamiento web con sólo unas líneas de código. En WordPress se utiliza mucho para crear distintas configuraciones, ya sean de seguridad, crear redirecciones o forzar el uso de HTTPS para todos los usuarios. Pero una mala configuración del archivo htaccess puede hacer que nuestro hosting no funcione correctamente o incluso dejar de funcionar. Para que esto no pase, vamos a ver algunos códigos útiles para htaccess que puedes utilizar en tu WordPress.
El archivo htaccess(hypertext access) es un archivo de configuración del hosting que se utilizan en servidores web basados en Apache.
Gracias al archivo htaccess puedes cambiar la configuración inicial de un servidor para que se adapte a las necesidades de un hosting en concreto, sin que esto afecte al resto de hostings que compartan el mismo servidor.
Lo encontrarás siempre con un punto delante (.htaccess) ya que se trata de un archivo oculto para que no sea visible si no se tienen los premisos necesarios en el sistema.
¿Qué puedo hacer con el archivo htaccess?
Al tratarse de un archivo de configuración del hosting, puedes hacer muchas cosas desde un archivo htaccess. Algunas de las más habituales son las siguientes:
Cambiar una URL para mejorar el SEO
Redirigir una URL a otra distinta, ya sea dentro o fuera del mismo dominio
Añadir sistemas de caché
Proteger el sitio o un directorio con contraseña para acceder con usuario y contraseña
Redirigir el tráfico HTTP hacia HTTPS
Personalizar la página de error, como el error 404
Bloquear el hotlinking para evitar que use tu contenido en otra web
Bloquear archivos o directorios, incluso toda la web si quieres
Establecer reglas para ajustar las cookies de la web
Esto son sólo algunas de las cosas que puedes configurar desde el archivo htaccess.
En WordPress se utiliza mucho el archivo htaccess y muchos de los plugins que se instalan lo que hacen es modificar el archivo htaccess directamente, en lugar de hacerlo tú mismo.
Esto está bien y es más cómodo para el usuario, pero también es peligroso porque no se tiene el control absoluto sobre lo que se cambia.
Un cambio en el archivo htaccess puede dar al traste con la configuración de tu WordPress y dejar de funcionar.
Por este motivo es recomendable hacer copias de seguridad antes de realizar cambios importantes en la web o al menos del archivo htaccess, ya que es algo muy rápido y puede ahorrarte un dolor de cabeza.
Recuerda que en nuestros planes de hosting WordPress las copias de seguridad están incluidas, así que puedes estar tranquilo por eso.
Los códigos htaccess más útiles parar WordPress
Ahora vamos a ver cuáles son los códigos que puedes añadir en tu archivo htaccess más útiles si utilizas WordPress como gestor de contenidos.
Ten en cuenta que estos códigos sólo los tienes que utilizar si lo ves necesario en alguna configuración de tu WordPress y no debes usarlos si no sabes cuál es su uso.
Es posible que ya tengas algún plugin o configuración que esté realizando la configuración que determina el código y puede entrar en conflicto, así que úsalos con precaución.
En WordPress, en el archivo wp-config.php, está la información para conectar a la base de datos del sitio, nombre de usuario y contraseña incluidos.
Esto es información muy sensible y cualquier atacante que consiga acceder a este archivo se puede hacer con el control de WordPress.
<Files wp-config.php>
Order deny,allow
Deny from all
</Files>
Este código permite variaciones, como permitir el acceso a una IP en particular, en cuyo caso sólo deberías añadir una línea más al código indicando la dirección IP que tiene acceso.
<Files wp-config.php>
order deny,allow
deny from all
allow from 192.168.xx.xx
</Files>
Bloquear el acceso al directorio wp-admin
En WordPress hay un directorio llamado wp-admin que contiene toda la información administrativa de la instalación.
Puedes bloquear el acceso a todo este directorio y añadir una o varias direcciones IP en una lista de acceso para que sí puedan acceder, por ejemplo, desarrolladores o administradores del sitio.
AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Acceso NO Permitido - STOP"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
# IP Permitidas
allow from 192.168.xx.xx
</LIMIT>
Cambiar el límite de memoria de WordPress
En ocasiones tenemos que variar el límite de memoria máxima permitida en WordPress, por ejemplo, para instalar un theme nuevo.
Para hacer esto sólo tienes que añadir la siguiente línea en el archivo htaccess:
php_value memory_limit 256M
El valor de la memoria lo puedes cambiar. Ten en cuenta que en algunos hostings esto está configurado por defecto y no es posible cambiarlo.
Crear una lista negra de direcciones IP
Si detectas que hay alguna dirección IP que está haciendo spam o intenta acceder a tu WordPress, puedes bloquearla desde htaccess.
Puedes añadir varias direcciones IP y así conseguir una lista negra de direcciones bloqueadas.
El código es muy sencillo, sólo tienes que recordar que cada dirección IP debe ir en una línea distinta:
order allow,deny
deny from 192.168.0.1
deny from 192.168.0.2
deny from 192.168.0.2
allow from all
Recuerda que las direcciones IP del código son un ejemplo y que debes reemplazarlas por las que hayas detectado que tengan intenciones maliciosas.
Proteger el archivo htaccess
Sí, el archivo htaccess puede protegerse a sí mismo añadiendo un código dentro del propio archivo.
Al tratarse de un archivo de configuración del hosting, el archivo htaccess suele ser uno de los objetivos de los atacantes, pero puedes protegerlo de distintas formas.
La primera es bloqueando a todos el acceso, pero permitiendo una o varias direcciones IP que sí que tengan acceso. Esto es importante para no bloquearte a ti mismo a quién se encargue del desarrollo de la web:
<Files .htaccess>
order allow,deny
deny from all
allow from 192.168.xx.xx
</Files>
Otro código muy útil se utiliza para evitar que nadie pueda subir o modificar el archivo .htaccess desde otro archivo .htaccess.
De esta forma evitas que un hacker anule las medidas de seguridad que tengas en tu archivo htaccess, subiendo otro:
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
También puedes proteger el archivo htaccess de la forma más clásica, con usuario y contraseña.
De esta forma evitas que nadie que no tenga las credenciales de acceso pueda acceder.
Las credenciales de acceso debes configurarlas en el archivo .htpasswd para que funcione correctamente:
La ruta /home/user/.htpasswd es un ejemplo. El archivo .htpasswd puede estar en otra ruta y debes poner la correcta para que funcione.
Cachear el contenido estático
Puedes utilizar el archivo htaccess para gestionar la caché del contenido estático como las imágenes, CSS o el JavaScript.
El contenido estático no suele cambiar, así que puedes indicar a los navegadores que guarden en su caché este contenido durante un tiempo.
Debes realizar pruebas, ya que hay algunos plugins que tienen que usar el JavaScript y si está cacheado puede hacer que WordPress funcione mal.
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType application/x-javascript "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresByType application/font-woff2 "access plus 1 year"
ExpiresByType application/x-font-ttf "access plus 1 year"
ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
ExpiresByType font/opentype "access plus 1 year"
</IfModule>
Puedes editar el código para quitar las líneas que corresponden al JavaScript o al CSS, dejando sólo las imágenes.
En cualquier caso, es recomendable que realices las pruebas correspondientes. En el ejemplo el tiempo establecido es de 1 año.
Conclusión.
Ya has visto lo mucho que puedes configurar en tu WordPress modificando el archivo htaccess de tu hosting.
Como hemos indicado varias veces en este artículo, el archivo .htaccess es muy importante, así que trátalo con la seguridad que se merece.
Por ejemplo, antes de editarlo, sólo tienes que hacer una descarga del archivo a tu ordenador y si hay algún problema, sólo tienes que volver a subirlo para restaurar el sitio de inmediato.
Los códigos htaccess para WordPress son útiles para cualquier otro tipo de web que esté creada en PHP y utilice Apache como servidor web, al menos en su mayoría, ya que algunos son específicos para WordPress.