17 de marzo de 2021

Htaccess: ¿Qué es y para qué sirve?

vadavo
Tabla de contenidos

.htaccess es un archivo de configuración que se encuentra en el servidor web Apache. Es decir, el servidor Apache se comportará de una u otra forma en función de cómo hayamos definido el archivo .htaccess de nuestra plataforma web. Cuando uno de estos archivos se coloca en un directorio que depende de Apache, el .htaccess se detecta y es ejecutado por el software de este servidor. 

Este tipo de archivos los usamos para modificar la configuración del servidor y permitir (o restringir), de esta forma, funcionalidades adicionales de Apache. Un ejemplo sería que podemos redireccionar la funcionalidad, reescribir la URL o hasta personalizar el error de tipo “404 file not found”. También ofrece prestaciones relacionadas con la protección de contraseñas, con los cambios de zona horaria, la restricción de ciertas IP, y otras cosas. 

Cómo crear un archivo .htaccess

¡Aquí hay que prestar atención! Empezaremos por hacer una copia de seguridad de todos los directorios de nuestra página web —incluyendo, claro, los .htaccess originales—. ¿Qué ventaja tiene esto?, pues que nos aseguramos de que si hay algún error, tendremos la posibilidad de recuperar la web.

Crear un archivo .htaccess es sencillo, tanto como abrir un editor de texto (no hace falta un software concreto, con el mismo TextEdit o el bloc de notas vale) y agregar uno de los códigos que te mencionamos más adelante (en la sección de usos comunes concretamente). El que elijas dependerá de la funcionalidad que quieras incluir. Luego te explicamos más.

Usos comunes para los archivos .htaccess

Aquí va una lista con algunos de los códigos más recurrentes. Aunque, por supuesto, siempre puedes buscar más o crear los tuyos propios.

Proteger nuestro archivo .htaccess

Lo primero es la seguridad. Si queremos evitar que otras persona modifique nuestro .htaccess, debemos activar el siguiente blindaje:

<files .htaccess>

order deny, allow

deny from all

</files>

Allow from all

</files>

Incluiremos aquí todas las extensiones que queramos proteger, separadas todas ellas por líneas. 

Banear usuarios y bots 

Imagina que encuentras actividad sospechosa en el servidor con una determinada IP, ¿que hacemos? No te preocupes, es posible bloquearla para liberar al servidor e impedir el acceso. Los bots de Spam o de información son todo un peligro, pero además sobrecargan nuestra página

Para bloquear bots usaremos:

RewriteEngine on

RewriteCond %{HTTP_REFERER} xxxxxxx\.com [NC,OR]

Si, por otro lado, lo que queremos es bloquear direcciones IP

Order Deny, Allow

Deny from XXX.XXX.XXX.XXX

Deny from XXX.XXX.XXX.XXX

Quitar www del dominio (redireccionar 301)

Te recomendamos que elijas usar www siempre o no usarlo —no combinarlos—. Así tu SEO no se verá perjudicado.

RewriteEngine on

Options +FollowSymLinks

RewriteCond %{HTTP_HOST} ^www\.midominio\.com$ [NC]

RewriteRule ^(.*)$ http://midominio.com/$1 [R=301,L]

Personalizar la página de error 404

Si te quieres poner un poco creativo, creando un .htaccess podremos darle un toque de color a este incómodo y gris error. 

Podemos usar una página estática HTML que ya hayamos creado con el siguiente código:

ErrorDocument 404 /errores/tupágina404.html

Si, no queremos más que escribir unas líneas de texto, bastará con usar este otro código (nuestro mensaje irá encerrado en las comillas):

ErrorDocumento 404 «<H1>Página no encontrada</H1>»

Quitar hotlinking de nuestra página

El hotlinking también es otro motivo que añadirá carga nuestro servidor. Tiene que ver con mostrar contenido de nuestro servidor en otra página web distinta. 

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http://(www\.)?tudominio\.com/.*$ [NC]

RewriteRule .*\.(jpg|gif|bmp|png|mp4)$ [L]

¿Cómo subir el archivo .htaccess a mi servidor?

  1. Abrimos un editor ASCII y escribimos el código por el que nos hayamos decidido
  2. Guardamos el archivo de la siguiente forma: htaccess.txt
  3. Abrimos el programa FTP y accedemos al servidor CGI. Subimos nuestro archivo htaccess.txt al directorio en el que queramos que acabe ubicado
  4. Usamos el programa FTP para renombrar el archivo ya subido por .htaccess  

¿Dónde está mi archivo .htaccess?

Lo podemos encontrar en la carpeta raíz de nuestra cuenta de alojamiento. Allí habrá almacenado un sitio web (My SQL database). 

En el caso de no poder ubicarla ahí tendremos, primero, que asegurarnos de que nuestra configuración del servidor muestra los archivos ocultos. Ocurre que el punto “.” antes del nombre del archivo lo oculta si no tenemos activada la mencionada configuración. 

También existe la posibilidad de que ni el servidor ni nuestra web necesiten un .htaccess. Si todo esto no funcionase, puede ser simplemente que nuestra web y servidor no necesiten un .htaccess. Esto puede ocurrir cuando la plataforma en la que está alojado nuestro sitio tiene otras maneras y enfoques a la hora de cubrir las funciones asociadas al .htaccess. Incluso, podría llegar a ocurrir que no tengamos que acceder nuestro archivo .htaccess desde la base de datos de nuestra web, sino que éste sea editable desde la pantalla de usuario y estemos modificándolo sin reparar en ello.  

Video explicativo sobre qué es .HTACCESS y cómo funciona

¿Necesitas ayuda con la gestión del Hosting o Sitio Web de tu negocio?

Compartir artículo:

También puede interesarte:

¿Nos dices cuál es tu nombre?
¿Nos compartes tu correo?
*Prometemos no molestarte y solo enviarte contenido de alto valor