El archivo .htaccess es un potente archivo web que controla la configuración de alto nivel de su sitio web. En los servidores que ejecutan Apache (un software de servidor web), el archivo .htaccess le permite realizar cambios en la configuración de su sitio web sin tener que editar los archivos de configuración del servidor.
En esta guía sobre el archivo .htacess, respondemos a qué es el archivo .htaccess, cómo usar el archivo .htaccess y cómo localizarlo en su servidor, y más.
.Ubicación de htaccess
Nota: Apache (el software que hace funcionar tu servidor web) está configurado para que todos los archivos llamados .htaccess estén ocultos. ¿Por qué? Los archivos tienen información de configuración importante y pueden ser utilizados para comprometer su servidor.
Aunque el archivo está oculto, la ubicación del archivo .htaccess se encuentra más comúnmente en la carpeta public_html de su sitio web.
Puede acceder a su archivo .htaccess de diferentes maneras:
- Desde la gestión de archivos de tu cuenta de hosting (como a través de cPanel)
- Desde un cliente sFTP o FTP
- Añadir redirecciones para ciertas URLs
- Cargar páginas de error personalizadas, como las páginas 404
- Forzar a su sitio a usar HTTPS en lugar de HTTP
- Proteger con contraseña ciertos directorios en su servidor
- Impedir el hotlinking
- Generalmente, usted quiere minimizar el número de archivos .htaccess en su servidor porque demasiadas configuraciones pueden ralentizar su servidor.
- Cuando su servidor ve un archivo .htaccess en un directorio, busca archivos .htaccess en todos los directorios padre también, aumentando el uso de recursos del servidor.
- Los archivos .htaccess que están más arriba en la ruta de archivos siempre tienen prioridad.
- 1. Inicie sesión en su servidor a través de SFTP.
- 2. Localice y descargue su archivo .htaccess. Normalmente estará ubicado en su carpeta de contenido. Si no tiene un archivo .htaccess, puede crear un archivo llamado .htaccess en su ordenador para guardar sus configuraciones.
- 3. Abra el archivo a través de su editor de texto favorito
- 4. Añada estas líneas a su archivo:
# enable basic rewritingRewriteEngine on
- 5. Copie y pegue sus nuevas configuraciones en el archivo .htaccess y guarde el archivo.
- 6. Suba esto de nuevo al directorio del que tomó originalmente su archivo .htaccess.
- 7. Pruebe su trabajo yendo a su sitio web y viendo las páginas que quería redirigir.
Consejo: Si no ves tu archivo .htaccess en su carpeta public_html, es posible que tenga que marcar «Mostrar archivos ocultos»
Una vez que abra el archivo .htaccess, debería verse así:
Usos comunes del archivo .htaccess
Hay varios casos de uso para el archivo .htaccess. Los ejemplos más comunes incluyen:
Usar archivos .htaccess es una poderosa herramienta para gestionar su servidor, pero puede ser complicado. Asegúrate de que estás familiarizado con la realización de cambios en tu servidor antes de empezar a editar los archivos .htaccess.
Usando múltiples archivos .htaccess
Puedes aplicar diferentes configuraciones a diferentes directorios de tu servidor usando múltiples archivos .htaccess. Usted puede, teóricamente, crear un archivo .htaccess en cualquier directorio de su servidor creando y subiendo un archivo de texto plano.
Aquí hay algunas cosas a tener en cuenta:
Cómo editar tu archivo .htaccess
Si necesitas editar tu archivo .htaccess, tendrás que descargar el archivo existente usando tu cliente FTP o a través del sistema de acceso a archivos de tu host, como dentro de cPanel.
El archivo .htaccess de tu sitio web puede contener ya configuraciones importantes. Si su archivo .htaccess tiene configuraciones existentes, agregue el nuevo código a lo que ya está allí.
Cómo redirigir URLs con el archivo .htaccess
Si decide cambiar los nombres de dominio o cambiar la organización de su sitio, puede configurar las redirecciones de URL para asegurarse de que los visitantes de su sitio web no se confundan. Una forma fácil de hacerlo es con los archivos .htaccess.
Para editar su archivo .htaccess, tendrá que volver a crear el archivo usted mismo y subirlo al servidor utilizando SFTP.
También puede usar el archivo .htaccess para redirigir páginas individuales en su sitio web utilizando redirecciones 301 y 302.
Rescrituras de URL con .htaccess
Las reescrituras son similares a las redirecciones porque también apuntan una URL de destino a otra URL, pero esto es realmente convertido por el servidor web mientras maneja el tráfico. Piense que es como usar un lápiz y una goma de borrar para cambiar un nombre en lugar de usar un signo para apuntar al nuevo nombre.
Las reescrituras de URL más comunes obligan a los sitios a tener URLs con o sin www en la URL.
Forzar direcciones de sitios sin www
Cuando añada esta información a su archivo .htaccess, cualquier visitante que escriba www.mysite.com será enviado a mysite.com.
Opciones +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} . RewriteCond %{HTTP_HOST} !^mysite\\ com RewriteRule (.*) http://mysite.com/$1Sustituya mysite.com por su dominio. Si tiene un dominio de nivel superior diferente (por ejemplo, .net o .org en lugar de .com), utilice ese dominio de nivel superior en lugar de .com/ No elimine el "\N" ya que es necesario para la sintaxis correcta.
Forzar direcciones de sitios WWW con .htaccess
Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^mysite.com RewriteRule ^(.*)$ http://www.mysite.com/$1Reemplace mysite.com con su dominio. Si tiene un dominio de nivel superior diferente (por ejemplo, .net o .org en lugar de .com), utilice ese dominio de nivel superior en lugar de ".com". Nota: No elimine el "\N" ya que es necesario para la sintaxis correcta.
Crear una página de error 404 personalizada con .htaccess
¿Qué es una página 404? Una página 404 es en realidad un mensaje de error que se muestra para las páginas que en realidad no existen en un sitio web. Una página 404 suele decir "Página no encontrada", pero también puede encontrar ejemplos de páginas 404 divertidas que se han personalizado para dar a los visitantes del sitio web una mejor experiencia.
Las páginas de error son una parte de cualquier sitio web. No importa qué, los visitantes del sitio web a veces se encontrarán con páginas de error. Si utiliza páginas de error personalizadas, puede convertir una página de error en una experiencia positiva con páginas 404 divertidas.
A continuación, mostraremos cómo añadir páginas de error personalizadas a sus sitios web utilizando .htaccess.
Antes de configurar sus páginas de error, tendrá que crear sus páginas de error. Puedes hacer esto como quieras: codificando a mano tu página, usando un constructor de sitios o de otra manera. Cuando haya terminado de crear su página de error, guarde el archivo para poder subirlo a su servidor.
Ahora, para configurar las páginas de error personalizadas, editará el archivo .htaccess de su sitio web.
- 1. Antes de editar su archivo .htaccess, suba sus páginas de error personalizadas a su servidor. Puede hacerlo a través de SFTP. Coloque estos archivos en el directorio de contenido de su sitio web.
- 2. Inicie sesión en su servidor a través de SFTP utilizando el programa FTP de su elección.
- 3. Descargue el archivo .htaccess que corresponde al dominio en el que desea utilizar las páginas de error personalizadas.
- 4. Abra este archivo en un editor de texto y añada esta información:
# servir páginas de error personalizadas ErrorDocument 400 /errors/400.html
- 5. Sustituye /errors/400.html por la ruta del archivo de una página de error que hayas subido. Este ejemplo tiene «400», para un error 400.
- 6. Añada tantas líneas como necesite, cambiando el número de error y la ruta del archivo según sea necesario.
ErrorDocument 500ErrorDocument 404ETC...
- 7. Cuando haya terminado de añadir a su archivo .htaccess, guarde y salga del archivo. A continuación, súbelo de nuevo al directorio del que lo has sacado.
- 8. Por último, prueba tu sitio web para asegurarte de que tus páginas de error funcionan.
Forzar HTTPS con .htaccess
Si quieres asegurarte de que todos los visitantes del sitio web utilizan una conexión segura (SSL), puedes utilizar reglas .htaccess para redirigir el tráfico inseguro. Esto redirigirá http://mysite.com a https://mysite.com. Por supuesto, esto sólo funcionará si tienes un SSL instalado para tu dominio. Para ello, todas las cuentas de iThemes Hosting vienen con un Let’s Encrypt SSL gratuito.
Para redirigir a todos los visitantes del sitio web a una conexión segura, añada esta regla al archivo .htaccess para el sitio web que desea redirigir:
#force SSL on entire siteRewriteEngine On RewriteCond %{HTTPS} !=onRewriteRule ^/?(.*) https://mysite.com/$1
Tendrá que sustituir mysite.com con el dominio real de su sitio.
Protección con contraseña de los directorios con .htaccess
Durante el desarrollo, las pruebas y la creación de su sitio web, es posible que desee proteger con contraseña su sitio hasta que esté listo para su visualización pública. También puede tener páginas o directorios web específicos que le gustaría bloquear a usuarios específicos. El archivo .htaccess es una poderosa herramienta para ayudarle a lograr esto dentro del marco de iThemes Hosting. A continuación, vamos a caminar a través de la creación de una contraseña para proteger su sitio web, directorios y otros componentes de su sitio.
- 1. En primer lugar, usted necesitará el acceso a la raíz del documento para el sitio. Aquí es donde alojará el archivo .htaccess y también el archivo .htpasswd para proteger su sitio con una contraseña. La ruta del archivo será algo así:
/eed292b5.ithemeshosting.com/web/content/
Se encontrará en la sección de información SFTP con el título de «Ruta» en su página de iThemes Hosting en Sync. Asegúrese de que está utilizando la ruta de información FTP y no la ruta UNIX.
2. El archivo .htpasswd debe colocarse un directorio más arriba de la raíz del sitio y mantenerse separado del archivo .htaccess.
Nota: Colocar el archivo .htpasswd por encima del contenido/carpeta es más seguro ya que no es accesible directamente a través de un navegador web.
- 3. Tendrá que generar la sintaxis de los archivos .htaccess y .htpasswd. Puedes usar cualquier sitio que quieras pero para el propósito de este artículo, estoy usando http://tools.dynamicdrive.com.
- 4. Una vez que sigas los pasos para crear los archivos, necesitarás colocar la sintaxis en tu servidor. Si ya tiene un archivo .htaccess en su sitio, puede anexar el archivo y añadir la sintaxis adicional.
- 5. Sube el archivo .htpasswd a la ubicación que determinaste en el paso 2.
- 6. Comprueba los permisos de los archivos para asegurarte de que los usuarios que quieres que tengan permisos podrán acceder a ellos.
- 1. En primer lugar, tendrá que iniciar sesión en su sitio a través de SFTP
- 2. Ahora tendrá que descargar el archivo .htaccess de su carpeta /web/content
- 3. Una vez que tenga el archivo .htaccess en su ordenador, querrá añadir las siguientes líneas a ese archivo:
RewriteEngine onRewriteCond %{HTTP_REFERER} !^$RewriteCond %{HTTP_REFERER} !^http://(www\.)midominio.com/.*$ RewriteRule \N-.
- 4. Asegúrese de modificar midominio.com para que coincida con su dominio. Además, asegúrese de no modificar ningún otro código dentro del archivo .htaccess.
- 5. Una vez que haya añadido las líneas anteriores, entonces querrá subir el archivo .htaccess de nuevo a su directorio /web/content
- 6. Una vez subido, desconéctese del SFTP y compruebe su sitio para asegurarse de que no hay errores.
Protección de hotlinks con .htaccess
¿Qué es el hotlinking? Cuando se crea un sitio web, los administradores suelen añadir imágenes y otros contenidos para que el sitio web se vea mejor y tenga algo de carácter. Para ello, se suele subir una imagen y añadirla a las páginas para que se vea. También es posible, aunque no se recomienda, utilizar imágenes que han sido subidas por otros sin necesidad de descargar y luego subir esa imagen a su sitio. Esto se llama hotlinking.
Desgraciadamente, para las personas cuyas imágenes han sido enlazadas en caliente por otros sitios web, probablemente notarán un aumento en el uso de recursos de su servidor, ya que el nuevo sitio que utiliza esas imágenes estará utilizando los recursos de su servidor.
Afortunadamente, puede evitar esto activando la protección contra hotlinks en su sitio. A continuación se explica cómo realizar el proceso de habilitar la protección de hotlinks en su sitio.
Seguridad & Proteja su sitio web de WordPress
Todo sitio web de WordPress necesita una sólida estrategia de copia de seguridad y protección. Con BackupBuddy, nuestro plugin de copias de seguridad para WordPress, y iThemes Security Pro, nuestro plugin de seguridad para WordPress, obtienes copias de seguridad y seguridad… además de la tranquilidad de saber que tu contenido está a salvo.