Certificado SSL gratis en WordPress con Let´s Encrypt
- Cambiar WordPress de HTTP a HTTPS
- Reemplazar las rutas en la base de datos con Better Search Replace
- Verificar peticiones por HTTP Y HTTPS mediante la base de datos:
- Comprobar peticiones HTTP Y HTTPS mediante el navegador
Para poder configurar cualquier sitio web con HTTPS, únicamente necesitaríamos 2 cosas:
- Tener activado un certificado SSL en el dominio.
- Hacer los ajustes necesarios en la aplicación para que pueda funcionar correctamente con el protocolo HTTPS.
Si tienes un plan contratado con Raiola Networks, no tendrías que preocuparte del primer punto, ya que todos nuestros planes de hosting incluyen certificados SSL gratuitos Let`s Encrypt para TODOS los dominios que tengas alojados en los mismos
El único requisito que es necesario para que se genere el certificado SSL, es que el dominio que tengas añadido al plan de hosting esté apuntando correctamente hacia dicho producto. En cuanto este requisito se cumpla, no sería necesario que realices ninguna tarea adicional desde tu lado, ya que el certificado Let`s Encrypt se generará automáticamente.
Si tienes un plan de hosting con cPanel contratado con nosotros, puedes verificar si se ha generado el certificado desde el apartado "Seguridad" > Estado SSL/TLS", en dónde podrás ver algo como esto:
Además, también puedes verificar si el certificado está correctamente instalado (y alguna información adicional) desde el propio navegador, simplemente accediendo a tu web y clicando en el icono del candado que se muestra a la izquierda del dominio:
En cuanto hayamos verificado que el certificado está correctamente instalado, ya podríamos llevar a cabo los cambios necesarios para que nuestro sitio web funcione con HTTPS, algo que tendremos que realizar en la propia aplicación.
Cambiar WordPress de HTTP a HTTPS
Como ya sabrás, en Raiola Networks estamos especializados en WordPress, por lo que nos centraremos en realizar el proceso en este CMS en concreto.
Es altamente recomendable que realices una copia de seguridad del sitio web antes de comenzar el proceso, para poder restaurarla en caso de que se produzca algún problema.
Lo primero que tenemos que hacer es configurar una redirección desde HTTP a HTTPS, de esta forma, evitamos que pueda accederse a la web mediante el protocolo inseguro.
Existen varias formas de configurar esta redirección, nosotros solemos hacerlo mediante el fichero ".htaccess", aunque podrías utilizar un plugin que realice la misma función si no quieres introducir código directamente en el archivo.
En este caso, el código que habría que configurar sería el siguiente:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://dominio.tld/$1 [R=301,L]
Acuérdate de modificar "dominio.tld" por el dominio que estés configurando (incluyendo las WWW en caso de que las utilice), y nuestra recomendación es que introduzcas el código en la parte superior del fichero, en las primeras líneas, de esta forma te aseguras de que no interfieran el resto de directivas.
En caso de que quieras realizar la redirección mediante un plugin, podrías utilizar "https-redirection", el cual puedes descargar de forma gratuita desde el repositorio de WordPress: https://wordpress.org/plugins/https-redirection/
Una vez instalado y habilitado el plugin, podríamos acceder a los ajustes del mismo desde el apartado "Ajustes >> HTTPS Redirection", en el que se nos mostrarán varias casillas que pueden marcarse para habilitar las funciones del plugin.
El plugin en cuestión es muy sencillo y únicamente nos permite activar y modificar 3 puntos:
- Enable automatic redirection to the "HTTPS": configura la redirección en el .htaccess de la instalación de forma automática.
- Apply HTTPS redirection on: tendremos que dejar marcada la opción de "The whole domain" para que la redirección se configure en todo el dominio.
- Force resources to use HTTPS URL: intenta forzar la carga de HTTPS en todos los recursos y elementos de la instalación (imágenes, archivos css, js, etc.)
En este caso, habría que marcar todas las casillas, y la configuración nos debería de quedar como la de la siguiente captura:
Después de configurar la redirección mediante alguno de estos métodos, podríamos realizar una modificación en el fichero "wp-config.php" que haga que la URL de nuestra instalación de WordPress cargue mediante HTTPS, para ello, tendríamos que añadir las siguientes líneas después de la etiqueta "<?php":
define('WP_HOME','https://midominio.com');
define('WP_SITEURL','https://midominio.com');
Como en el caso anterior, tendremos que sustituir "midominio.com" por nuestro dominio, y en caso de que utilice WWW, habría que añadirlo de igual forma.
Reemplazar las rutas en la base de datos con Better Search Replace
Una vez configurada la redirección y añadidas las líneas indicadas, nuestra web ya debería de redirigir a HTTPS de forma correcta, no obstante, lo más seguro es que siga habiendo ciertos recursos en la base de datos que intenten cargarse mediante el protocolo HTTP y que generen algunos avisos al visualizar la web en el navegador, por lo que para solucionar esto, habría que reemplazar dichas referencias en la base de datos de la web, de forma que puedan cargarse TODOS LOS RECURSOS con HTTPS.
Para realizar esto, podemos utilizar el plugin de Better Search Replace, el cual podemos descargar gratuitamente desde el repositorio de WordPress: https://wordpress.org/plugins/better-search-replace/
Cuando instalemos y activemos el plugin, podremos ver un nuevo apartado en el administrador de WordPress desde "Herramientas" > Better Search Replace", en el que podremos ver algo como esto:
Como puedes observar, existen varias casillas y campos que habría que completar para efectuar el cambio:
- Buscar: aquí tendríamos que introducir el dominio con HTTP (es la cadena de texto que se buscará en la base de datos).
- Sustituir: tendremos que poner el dominio con HTTPS (es la cadena de texto que reemplazará a la que hemos buscado).
- Seleccionar tablas: tendríamos que marcarlas todas.
- Sin tener en cuenta mayúsculas/minúsculas: esto lo dejaremos desmarcado, tal y como está por defecto.
- Reemplaza los GUID: La dejamos también desmarcada.
- Ejecutar como un simulacro: Te permite ejecutar el proceso sin realizar los cambios pertinentes en la base de datos, lo que puede ser una buena opción si queremos verificar antes de nada la cantidad de modificaciones que se van a realizar.
Cuando rellenemos todos los campos, pulsaremos en "Ejecutar búsqueda/sustitución" para iniciar el proceso (en nuestro ejemplo, se dejaría habilitada la opción de "Ejecutar como un simulacro").
Cuando finalice el proceso, se mostrará un texto en la parte superior que nos mostrará los cambios que se realizarían en la base de datos si ejecutamos ese reemplazo sin utilizar la opción de "Ejecutar como un simulacro":
Si le damos a la opción de "Haz click aquí" podremos ver la cantidad de cambios que se han encontrado en cada una de las tablas de la base de datos.
Por último, en caso de que veamos que todos los campos están correctamente configurados, podemos realizar ya el cambio de forma permanente desactivando la casilla de "Ejecutar como un simulacro" y clicando nuevamente en "Ejecutar búsqueda/sustitución" y nos tendría que salir por pantalla un resultado parecido a este.
En caso de que hayamos realizado todos los pasos de la guía correctamente, todos los recursos y elementos de nuestra instalación ya deberían de cargar exclusivamente con HTTPS.
Verificar peticiones por HTTP Y HTTPS mediante la base de datos:
Si queremos comprobar que recursos y elementos cargan con HTTP en nuestra instalación, podríamos hacer una búsqueda en la propia base de datos de la misma, haciendo referencia a la URL de nuestra web con el protocolo HTTP.
Si tienes un hosting contratado con Raiola Networks, puedes acceder al cPanel y dirigirte al apartado "Bases de datos > phpMyAdmin", en el cual tendrías que escoger la base de datos de la instalación (puedes verificarla en su fichero "wp-config.php" correspondiente) y hacer la búsqueda desde la sección "Buscar".
En caso de que existan coincidencias, habría que reemplazarlas, tal y como hicimos anteriormente mediante el plugin "Better Search Replace". A continuación, os mostramos un ejemplo de una web a la que habría que realizarle dichas modificaciones.
Comprobar peticiones HTTP Y HTTPS mediante el navegador
Otra opción que podríamos utilizar para verificar qué recursos nos están cargando con HTTP sería la consola de desarrolladores del propio navegador que utilicemos.
En el caso de Google Chrome, se puede abrir fácilmente usando la combinación de teclas “CRTL + MAYUS + I” o “FIN + F12”.
Si nuestra web está configurada para funcionar con HTTPS, y todavía tenemos algún recurso que intenta cargar con HTTP, podemos comprobar que elementos en específico son los que cargan con el protocolo inseguro desde la pestaña de “Console”.
Como puedes observar en la captura anterior, la web está preparada para funcionar exclusivamente con HTPPS, no obstante, las imágenes no están configuradas para funcionar con este protocolo, por lo que no llegan a mostrarse correctamente.
En caso de que hayamos realizado TODOS los pasos indicados en este post correctamente, no debería de cargarse ningún recurso con HTTP, no obstante, en caso de que sea así, es posible que algún elemento que tengas instalado en tu web esté forzando esa petición, por lo que habría que buscarlo y modificar su configuración directamente desde el administrador para intentar solventarlo.
Deja una respuesta
Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *