https1

En varias ocasiones, cuando nuestro sitio ya funciona con https y http, queremos forzar que todo el tráfico sea protegido con https y ssl, es decir que el que ingresa a http://ejemplo.com sea redirigido a https://ejemplo.com. Por ejemplo si manejamos pagos y cobros de clientes o similar.

Nota importante:

No forzar el SSL si tu sitio no tiene el certificado activo y funcionando. Si el certificado no se generó, se venció o da un error al entrar con https a tu web, forzar el SSL hará que no pueda generarse el certificado nuevo correctamente. El SSL sólo debe ser forzado una vez que el HTTPS ya funciona bien en tu sitio web.

 

Forzar el SSL con un .htaccess no siempre es recomendable y según como esté armado su sitio puede ocasionar fallas en el mismo. A su vez, navegadores antiguos como Explorer pueden tener problemas para ver su sitio. Si su sitio no necesita SSL o apunta a clientes con sistemas antiguos, no es necesario usarlo.

Lo mejor es que antes de hacer estos cambios, verifique que su sitio funciona correctamente ingresando con https:// y solicite a su programador que lo asesore para adaptar el contenido a https.

Este código es genérico para sitios sencillos o HTML. Sitios completos o CMS como WordPress pueden dar error al usar este código. En ese caso, lo mejor es forzar el SSL desde dentro de la configuración de WordPress junto a tu programador.

 

Para hacer esto, solamente tenemos que editar nuestro archivo .htaccess y agregar la redirección correspondiente. Recuerda que si no tienes un .htaccess en su dominio, deberás crearlo primero.

Entonces, ingresando por FTP, editar el .htaccess y al comienzo ponemos las lineas. Si no sabes que PHP usas, podrás verlo con tu programador o generar un phpinfo.

Si usas PHP 7.3 o superior:

RewriteEngine On
RewriteCond %{REQUEST_URI} "!/.well-known/acme-challenge/"
RewriteCond %{HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

Y listo, todo el que ingrese a tu dominio siempre verá el https.

 

Tal y como marca el código es fundamental excluir la ruta al directorio .well-known el cual siempre debe ser accesible por http normal o la renovación de los certificados SSL podría fallar.

Importante: Estos códigos para el .htaccess son ejemplos genéricos. Suelen funcionar en la mayoría de sitios, pero muchas veces deberán ser adaptados según su sitio web por un programador. Sistemas como WordPress pueden dar errorres con este código y en ese caso, lo mejor es forzar el SSL desde la cofiguración del propio WordPress.

¿Te fue de ayuda este articulo?

Comments are closed.