¿Qué son los archivos .htaccess?

Se trata de pequeños archivos de texto invisibles por medio de los cuáles podemos controlar algunas funciones de configuración en los servidores que emplean Apache. En la mayoría de los servidores compartidos, el acceso a estos archivos no está permitido por lo cual es imposible hacer cualquier modificación. Sin embargo, si podemos acceder al .htaccess de nuestro hosting, puede resultarnos sumamente útil sobre todo para mejorar la seguridad de nuestro sitio web.
Para poder emplear el .htaccess, el servidor debe tener activada una directiva denominada AllowOverride dentro de la cual deben estar definidas las variables que podemos modificar. De esta manera, si efectuamos modificaciones en un archivo .htaccess que están debidamente escritas y no tienen el efecto deseado, probablemente debemos consultar al soporte técnico si el AllowOverride está activado y que funciones podemos sustituir.
Si la directiva AllowOverride está activada (true), el servidor efectúa una búsqueda en todos los directorios hasta localizar el archivo .htaccess que corresponde y seguidamente muestra la página web del usuario. En caso de no encontrar ningún .htaccess el servidor aplica las medidas que están establecidas en la configuración de Apache.

¿Cómo crear un archivo .htaccess?

La creación de un archivo .htacess es sumamente sencilla y solo requiere aplicar los siguientes pasos:
  • Abrir un editor de texto como Notepad de Windows o TexEdit de Mac (no se debe utilizar Word u otros programa similar) y copiar el código que queremos de contenido para el archivo. Un ejemplo de código para un archivo .htaccess que va a emplearse en un sitio basado en WordPress es el siguiente:
 # BEGIN htaccess
 # Protect the htaccess file

  Order Allow,Deny
  Deny from all

 # Protect the htaccess file

  Order Allow,Deny
  Deny from all

 # Disable directory browsing
 Options All -Indexes

 # Enable the following of symlinks
 Options +FollowSymLinks

  # No ETags, No Pragma
  Header unset Pragma
  Header unset ETag
  # Make sure proxies deliver correct content
  Header append Vary User-Agent env=!dont-vary
  # Ensure proxies deliver compressed content correctly
  Header append Vary Accept-Encoding

 # BEGIN WordPress

  RewriteEngine On
  RewriteBase /
  RewriteRule ^index\.php$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.php [L]

 # END WordPress
 # END htaccess

Por supuesto que podemos emplear otras modificaciones y opciones pero suele ser suficiente para ofrecer una buena protección a nuestro sitio de WordPress.

  • Una vez que hemos agregado el código deseado, guardamos el archivo con el nombre htaccess.txt.
  • Seguidamente subimos el archivo a la carpeta donde tenemos instalado WordPress.
  • Finalmente le cambiamos el nombre al archivo a .htaccess (es importante recordar que el punto siempre debe ir antes del nombre).