¿Qué es el archivo .htaccess? Guía completa

Valoración:
5/5
de lectura

El archivo .htaccess es un poderoso archivo de tu página web que controla la configuración más avanzada de tu web.

En los servidores Apache por ejemplo (Un software de servidor web) el archivo .htaccess te permitirá realizar cambios en la configuración de tu página web sin tener que editar los archivos de configuración del servidor.

Por todo ello y, debido a la importancia de este archivo, en esta guía respondemos sobre qué es el archivo .htaccess, cómo utilizarlo y donde se encuentra este archivo en tu servidor.

Tabla de contenidos

¿Dónde se encuentra el archivo .htaccess?

Nota: Apache (El software que alimenta tu servidor) está configurado para que todos los archivos .htaccess estén ocultos. ¿Por qué? Los archivos tienen información de configuración importante y pueden usarse para comprometer el servidor.

Aunque el archivo esté oculto, la ubicación del archivo .htaccess más común es la carpeta public_html de tu servidor web.

Podrás acceder a tu archivo .htaccess de diferentes formas:

  • Mediante el de archivos de tu hosting (Por ejemplo, a través de cPanel)
  • Mediante un cliente sFTP o FTP como Filezilla.

Sugerencia: si no logras ver el archivo .htaccess en tu carpeta public_html es posible que debas marcar la opción «Mostrar archivos ocultos».

Para que sirve el archivo .htaccess

El archivo archivo .htaccess sirve para muchas cosas de suma importancia dentro de tu página web. Algunos de los usos más comunes son:

  • Agregar redirecciones para ciertas URL.
  • Cargar páginas de error personalizadas como páginas 404.
  • Obligar a tu página web a usar HTTPS en lugar de HTTP.
  • Proteger con contraseña ciertos directorios de tu servidor.
  • Prevenir hotlinking.

Los archivos .htaccess son una herramienta poderosa para administrar tu servidor pero has de tener cuidado. Si no estas familiarizado con la realización de cambios en tu servidor haz una copia del archivo original .htaccess en tu ordenador.

Nota: Antes de probar cualquiera de las cosas descritas en esta guía te recomendamos encarecidamente hacer una copia de seguridad del archivo .htaccess y de toda tu página web WordPress.

Uso de varios archivos .htaccess en tu servidor

Es posible aplicar diferentes configuraciones a diferentes directorios en tu servidor web utilizando múltiples archivos .htaccess.

En teoría, puedes crear un archivo .htaccess en cualquier directorio de tu servidor creando y cargando un archivo de texto sin formato.

Sin embargo, antes de hacer esto ten en cuenta lo siguiente: 

  • Minimiza en lo posible la cantidad de archivos .htaccess en tu servidor porque demasiadas configuraciones pueden ralentizar el servidor.
  • Cuando tu servidor ve un archivo .htaccess en un directorio también busca archivos .htaccess en todos los directorios principales generando un incremento de recursos en tu servidor.
  • Los archivos .htaccess que se encuentren más arriba de la ruta del archivo siempre tendrán prioridad.

¿Cómo editar el archivo .htaccess?

Si necesitas editar el archivo .htaccess deberás descargar el archivo existente utilizando un cliente FTP como Filezilla o mediante el sistema de gestión de archivos detu hosting.

De todos modos, esposible que el archivo .htaccess ya contenga configuraciones importantes de tu página web.

Por este motivo, si tu archivo .htaccess tiene ya ciertas configuraciones existentes agrega el nuevo código al existente justo debajo.

Nota: No elimines el archivo .htaccess existente a menos que esté vacío o estés absolutamente seguro de que puedes eliminarlo.

Cómo redirigir una URL con el archivo .htaccess paso a paso

Si decides cambiar tu nombre de dominio o cambiar la estructura de tu página siempre podrás configurar redireccionamientos de URL para asegurarte de que los usuarios de tu página web no se pierdan y siempre encuentren el contenido adecuado.

Una forma sencilla de hacer estas redirecciones es mediante htaccess.

Para editar el archivo .htaccess deberás seguir esta guía:

  1. Inicia sesión en tu servidor a través de sFTP.
  2. Busca y descarga tu archivo .htaccess. Por lo general, se ubicará en la carpeta raíz del servidor . Si no tienes un archivo .htaccess puedes crear un archivo llamado .htaccess en tu ordenador para guardar tus configuraciones.
  3. Abre el archivo a través de tu editor de texto favorito (El bloc de notas de Windows o Notepad++ te servirán).
  4. Agrega estas líneas a tu archivo:
    # habilitar la reescritura básica  RewriteEngine encendido
  5. Copia y pega tus nuevas configuraciones en el archivo .htaccess y guarda el archivo.
  6. Vuelve a cargarlo en el directorio del que originalmente tomaste el archivo htaccess.
  7. Prueba el trabajo realizado yendo a tu página web y comprobando que las redirecciones funcionan perfectamente.

También podrás utilizar el archivo .htaccess para redirigir páginas individuales en tu página web mediante redireccionamientos 301 y 302.

Reescritura de URLs con .htaccess

Las reescrituras son similares a las redirecciones porque también apuntan una URL de destino a otra URL. Sin embargo, estas reescrituras de URL ocurren mientras hay tráfico web.

Las reescrituras de URL más comunes son las de páginas web con o sin www en la URL.

Forzar direcciones de sitios que no sean WWW

Cuando agregas esta información a tu archivo .htaccess cualquier visitante que vaya a www.tudominio.com será enviado a tudominio.com .

Opciones + FollowSymLinks   RewriteEngine encendido   RewriteCond% {HTTP_HOST}.  RewriteCond% {HTTP_HOST}! ^ tudominio \ .com   RewriteRule (. *) Http://tudominio.com/$1 [R = 301, L]

Reemplaza tudominio.com con tu dominio para que te funcione el anterior código.

Si tienes con un TLD diferente (Por ejemplo, .net o .org en lugar de .com ) usa ese dominio de nivel superior en lugar de .com / No elimines la «\», ya que es necesaria para la sintaxis correcta.

Forzar direcciones de sitios WWW con .htaccess

Opciones + FollowSymLinks  RewriteEngine encendido  RewriteCond% {HTTP_HOST} ^ tudominio.com [NC]  RewriteRule ^ (. *) $ Http://www.tudominio.com/$1 [L, R = 301]

Reemplaza tudominio.com con tu dominio para que te funcione el anterior código.

Si tienes con un TLD diferente (Por ejemplo, .net o .org en lugar de .com ) usa ese dominio de nivel superior en lugar de .com / No elimines la «\», ya que es necesaria para la sintaxis correcta.

Creación de una página de error 404 personalizada con .htaccess

Una página 404 es un mensaje de error que se muestra para páginas que en realidad no existen dentro de un sitio web.

Una página 404 generalmente se suele utilizar para indicar el siguiente mensaje: «Página no encontrada». Sin embargo, existen ejemplos de páginas 404 divertidas que se han personalizado para brindar a los visitantes perdidos de la página web una mejor experiencia.

Las páginas de error forman parte de cualquier página web. De hecho, es inevitable que tarde o temprano tus usuarios acaben en ellas. Por ello, si usas páginas de error personalizadas, podrás convertir una página de error en una experiencia positiva con divertidas páginas 404 .

A continuación, te mostraremos cómo agregar páginas de error personalizadas usando .htaccess.

Nota: Antes de configurar tu páginas de error 404 en htaccess deberás crear la propia páginas de error. Cuando la tengas lista, carga dicha página en tu servidor.

Para configurar tu página de error 4040 con .htaccess sigue esta guía paso a paso:

  1.  Inicia sesión en tu servidor a través de sFTP utilizando el programa FTP de tu elección como por ejemplo Filezilla.
  2. Descarga el archivo .htaccess que corresponda al dominio donde deseas utilizar la página de error personalizada.
  3. Abre este archivo en un editor de texto y agrega esta información:
    # servir páginas de error personalizadas  ErrorDocument 400 /errors/400.html
  4. Reemplaza /errors/400.html con la ruta de la página de error que hayas subido previamente a tu servidor.
  5. Agrega tantas líneas como necesites, cambiando el número de error y la ruta del archivo según sea necesario.
    ErrorDocument 500  ErrorDocument 404  ETC ...
  6. Cuando hayas terminado de agregar a tu archivo .htaccess todas las líneas de código guarda y sal del archivo.
  7. Luego, carga el archivo de nuevo en el directorio del que lo obtuviste.
  8. Finalmente, prueba tu página web para asegurarte de que tu página de error está funcionando.

Forzar una página web HTTPS con .htaccess

Si deseas asegurarte de que todos los visitantes de tu página web utilicen una conexión segura (SSL) deberás usar las reglas .htaccess para redirigir el tráfico web inseguro (Sin SSL).

El siguiente código redirigirá a tus usuarios desde http://tudominio.com a https://tudominio.com.

Nota: Esto solo funcionará si tienes un SSL instalado para tu dominio. Para ello, asegúrate de que tu hosting te lo proporciona de forma gratuita con Let’s Encrypt.

Para redirigir a todos los visitantes del sitio web a una conexión segura agrega esta regla al archivo .htaccess del sitio web al que desea redireccionar:

#force SSL en todo el sitio  RewriteEngine On  RewriteCond% {HTTPS}! = Activado  RewriteRule ^ /? (. *) Https://TUDOMINIO.com / $ 1 [R = 301, L]

Protección de Hotlinking mediante .htaccess

Al crear una página web, los administradores de la misma generalmente agregan imágenes y otro contenido para que la página web mejore. Al hacerlo, generalmente se carga una imagen y se agrega a las páginas correspondientes para verla.

También es posible (Aunque no recomendado) utilizar imágenes que hayan sido cargadas por otros en sus páginas web sin necesidad de descargarlas y luego cargarlas en nuestra propia página web. Esto se llama hotlinking .

Por desgracia, esta práctica provoca  un aumento en el uso de los recursos del servidor de la página web que tenga cargada la imagen, ya que el nuevo sitio que usa esas imágenes utilizará los recursos del servidor externo.

Para evitar el uso excesivo de recursos de tu servidor por el uso indebido de imágenes podrás habilitar una protección de hotlinking mediante el archivo .htaccess en tu página web. Para ello sigue estos pasos:

  1. Primero, deberás iniciar sesión en su sitio a través de sFTP.
  2. Ahora deberás descargar el archivo .htaccess de su carpeta.
  3. Una vez que tengas el archivo .htaccess en tu ordenador agrega las siguientes líneas a ese archivo:
    RewriteEngine encendido  RewriteCond% {HTTP_REFERER}! ^ $  RewriteCond% {HTTP_REFERER}! ^ Http: // (www \.) tudominio.com/.*$ [NC]  RewriteRule \.
  4. Asegúrate de modificar tudominio.com para que coincida con el nombre correcto de tu dominio. Además, asegúrate de no modificar ningún otro código dentro del archivo .htaccess.
  5. Una vez que hayas agregado las líneas anteriores vuelve a cargar el archivo .htaccess en su directorio correspondiente.
  6. Una vez cargado, desconéctate de SFTP y verifica tu página web no tiene errores.

¿Quieres limpiar tu web WordPress de virus? Confía en nosotros.

Te ayudamos a mantener segura tu página web WordPress frente a ciber ataques
¿Necesitas ayuda con la seguridad de tu WordPress?

Deja tu página web en manos de expertos y mantén segura tu página web WordPress frente a ciber ataques

¿Tienes alguna duda?

O escríbenos a hola [@] limpiatuweb [.] com para más preguntas

¡Suscríbete!

Y recibe directamente en tu email cada mes todas las vulnerabilidades en plugins, themes y WordPress