Forzar el uso del SSL en todo nuestro WordPress
Cómo habilitar el SSL en todo nuestros WordPress, cómo debemos configurar el htaccess para que todo el tráfico se redireccione a través de HTTPS, y cómo unos sencillos pasos obtendremos una web más segura. Y seguiremos la tendencia marcada por Google para mejorar nuestro SEO.
Como muchos sabréis, Google hace unos 3 años en un artículo recomendó el uso del HTTPS, para hacer internet más seguro e informó que había hecho cambios en sus algoritmos para clasificarlos.
En ese mismo artículo reconocían que habían hecho inversiones para que en todos sus servicios las comunicaciones entre el usuario y los servicios de Google fueran seguras. Fruto de una de esas inversiones, junto con otras asociaciones como Mozilla, Apache, … o empresas como Facebook, Automattic, …, surgió el proyecto Let’s Encrypt, donde podemos conseguir un certificado SSL de forma sencilla, rápida y GRATUITA.
Desde hace ya algún tiempo los principales proveedores de alojamiento ofrecen de forma gratuita el servicio de creación de certificados SSL a través de Let’s Encrypt. En algún futuro artículo veremos cómo crear nuestros propio certificado si nuestro hosting no nos ofrece esta opción.
Después de toda esta teoría pasamos a la acción: ¿Cómo hacemos que nuestros visitantes vean el contenido de nuestro proyecto a través del HTTPS aunque vengan a través de HTTP?
La solución es sencilla, modificamos nuestros archivo .htaccess para forzar que todo el tráfico vaya siempre a través del HTTPS.
Accedemos al directorio de la instalación de nuestro WordPress y editamos el archivo .htaccess. Si abrimos el archivo que de serie viene en cualquier instalación de WordPress tendrá un aspecto similar a este:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Los cambios que os comento siempre tenéis que hacerlos después de la etiqueta #END WordPress, para evitar el mal funcionamiento de nuestro proyecto. Añadimos las siguientes líneas y guardamos:
# TODO SSL
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,QSA,L]
Adicional
Una configuración adicional muy recomendable es añadir las siguientes dos líneas a nuestro archivo wp-config.php.
define( 'FORCE_SSL_ADMIN', true );
define( 'FORCE_SSL_LOGIN', true );
Muy importante
Tened en cuenta que es necesario tener instalado un certificado SSL instalado y configurado en nuestro servidor, si no es así la configuración no funcionará.
Si tenéis cualquier consulta no dudéis en poneros en contacto conmigo o escribir un comentario en este artículo. Si os ha gustado el artículo, no dudéis en compartirlo.
Muchas gracias, un saludo!
Créditos: Imagen del artículo: Mrkus Spiske