Cómo forzar HTTPS usando .htaccess (actualizado en 2021)

Cómo forzar HTTPS usando .htaccess (actualizado en 2021)

Después de instalar un certificado SSL, tu sitio web está disponible a través de HTTP y HTTPS. Sin embargo, es mejor usar solo el último porque encripta y protege los datos de tu sitio web. Si bien Hostinger permite a los usuarios establecer esta configuración con solo un clic, también puedes usar el archivo .htaccess para forzar la conexión HTTPS. Este tutorial te mostrará cómo.

Forzar HTTPS en todo el tráfico

Una de las muchas funciones que puedes realizar a través de .htaccess son las redirecciones 301, que redirigen permanentemente una URL antigua a una nueva. Puedes activar la función para forzar HTTPS en todo el tráfico entrante siguiendo estos pasos:

  1. Ve al Administrador de archivos en tu panel de hosting y abre .htaccess  dentro de la carpeta public_html. Si no puedes localizarlo, asegúrate de crearlo o mostrarlo.
  2. Desplázate hacia abajo para encontrar RewriteEngine On e inserta las siguientes líneas de código debajo de él:
1. RewriteEngine On
2. RewriteCond %{HTTPS} off
3. RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
  1. Guarda los cambios.

IMPORTANTE: asegúrate de que la línea RewriteEngine On no se repita dos veces. En caso de que la línea ya exista, simplemente copia el resto del código sin ella.

Forzar HTTPS en un dominio específico

Supongamos que tienes dos dominios: http://yourdomain1.com http://yourdomain2.com. Ambos dominios acceden al mismo sitio web, pero solo quieres que el primero sea redirigido a la versión HTTPS. En este caso, debes utilizar el siguiente código:

1. RewriteEngine On
2. RewriteCond %{HTTP_HOST} ^yourdomain1.com [NC]
3. RewriteCond %{HTTPS} off
4. RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Asegúrate de reemplazar yourdomain1 con el dominio real en el que estás intentando forzar HTTPS.

Forzar HTTPS en una carpeta específica

El archivo .htaccess también se puede utilizar para forzar HTTPS en carpetas específicas. Sin embargo, el archivo debe colocarse en la carpeta que tendrá la conexión.

1. RewriteEngine On 
2. RewriteCond %{HTTPS} off 
3. RewriteRule ^(folder1|folder2|folder3) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Asegúrate de cambiar las referencias de carpeta a los nombres de directorio reales.

Después de realizar los cambios, borra la memoria caché de tu navegador e intenta conectarte a tu sitio a través de HTTP. Si todo se agregó correctamente, el navegador te redireccionará a la versión HTTPS.

Conclusión

¡Felicidades! has editado correctamente tu archivo .htaccess y has redirigido todo el tráfico HTTP a HTTPS, la versión segura de tu sitio web. Dependiendo de la plataforma donde desarrollaste tu sitio web, podría haber métodos alternativos para habilitar esta función. Por ejemplo, puedes configurar tu sitio WordPress o PrestaShop para que funcione con HTTPS utilizando plugins.

Si tienes algún consejo, truco o sugerencia que quieras compartir, ¡esperamos verte en los comentarios!

Author
El autor

Carlos Mora

Carlos es un profesional del marketing digital, eCommerce y de los constructores de sitios web. Ama ayudar a crecer a empresas en línea a través de sus tips. En su tiempo libre, seguramente está cantando o practicando artes marciales.