¡Hola lector!
La entrada anterior vimos qué significa el protocolo HTTPS y para qué sirve en tu página web.
Ahora que ya conoces su importancia, esta semana descubriremos cuales son los pasos a seguir para cambiar de http a https en tu web si es WordPress.
¡Vamos allá!
Como ya sabes, es necesario disponer de un certificado SSL para activar la web con HTTPS.
Para conseguirlo, debemos recurrir al hosting o proveedor de servicios donde tenemos alojada nuestra página web y escoger entre los distintos tipos disponibles.
La mayoría de los proveedores de hosting ofrecen certificados de pago, como Rapid SSL, PremiumSSL, WildCard, etc.
Sus precios pueden variar según el proveedor. Por ejemplo en Cdmon hemos encontrado el RapidSSL por 73€/año, no obstante en Profesional Hosting tienes el mismo por 35€/año.
Aunque pueden presentar las mismas especificaciones como el cifrado estándar de 256 bits, la diferencia de precio radica en el tipo de proyecto web que tengas: si es de pequeño tamaño, si tienes subdominios habilitados o si tu proyecto se compone de múltiples dominios.
También hay certificados SSL que ofrecen algunos extras que no dan otros.
Por ejemplo, el True Bussiness ID + EV de Cdmon cuesta 250€/año pero se trata de un certificado de nivel superior que incluye la barra de color verde en el navegador, lo cual es el signo más visible de confianza para el usuario.
Sí, ya sé, quizás te estés preguntando cómo vas a dejarte este dineral en un certificado SSL si tu proyecto es pequeño o estás empezando.
Por suerte hay uno que es totalmente gratuito.
Se llama Let’s Script, muchos hostings lo proporcionan y nosotros te vamos a explicar cómo puedes instalarlo.
Pero primero hablemos un poco más de este certificado.
Let’s Script es una autoridad de certificación (CA) gratuita, automatizada y abierta, que te permite crear un certificado SSL totalmente válido y funcional, utilizando el protocolo ACME.
Detrás de esta iniciativa encontramos grandes compañías como Cisco, Mozilla, Chrome, HP, Facebook…
Una de las ventajas de este certificado es que la instalación se hace de forma muy rápida y sencilla.
La diferencia está en que las opciones de pago permiten validar varios subdominios, incluyen extras que aumentan la confianza en los usuarios e incluso pueden incluir un seguro de cobertura para cubrir daños por si la empresa emisora del certificado cometiera alguna negligencia.
Pero si tienes un proyecto pequeño y con un único dominio, el certificado Let’s Script ya te sirve.
Primero tienes que verificar que el hosting disponga del certificado.
Para hacerlo, busca el icono “Let’s Script” en el panel de control del hosting (accediendo con las claves de acceso que te enviaron por email cuando contrataste el servicio).
Si no lo encontraras, te recomiendo que te pongas en contacto con ellos y les preguntes. Quizás incluso te lo instalen.
Todo dependerá de las características del hosting y de lo que tengas contratado.
Eso sí, si te piden dinero a cambio desiste, porque ya has visto que es un certificado que puedes conseguir de forma gratuita.
Una vez pinches en el icono del certificado, introduce una dirección de email (en caso de que te lo pida) donde recibir notificaciones y avisos importantes, selecciona las opciones de las que te quieras proteger (yo te recomiendo que habilites si acaso la casilla para proteger el subdominio “www” pero no es necesario que protejas el webmail) y pincha en el botón de instalación.
El certificado SSL se habilitará en pocos segundos.
Debes tener en cuenta que el certificado se habilita por un periodo de tiempo, aunque el certificado Let’s Script se suele renovar automáticamente antes de que finalice el periodo de validez.
Accede al panel de administración de tu WordPress y ve a Ajustes -> Generales.
Cambia la dirección de Wordpress y del sitio de http a https
Guarda los cambios.
Ahora debes cambiar todos los elementos de tu web (urls, imágenes, etc) de http a https.
Puedes hacerlo de dos formas:
Si quieres ir a lo rápido y seguro, instala el plugin Really Simple SSL en tu web WordPress.
Supondrá tener activo un plugin más en tu web pero es bastante ligero y además te ahorrará unas cuantas horas de trabajo.
Really Simple SSL lo que hace es detectar automáticamente todos los ajustes y contenidos de tu web y lo configura para que funcione en https.
Es decir, permite que todo el sitio se mueva a SSL.
La instalación se hace igual que cualquier otro plugin: búscalo en el cuadro de búsqueda de plugins, pincha en Instalar y Activar.
Una vez lo hayas hecho, ve al apartado Ajustes de tu WordPress y verás una nueva pestaña: SSL.
En esta pestaña verás notificaciones que corresponden a la activación del protocolo HTTPS en tu web.
Podrás ver si hay algún problema con el certificado y podrás activar/desactivar algunas opciones.
Yo te recomiendo que lo dejes todo por defecto y tan solo pinches en el botón: Activar SSL.
Y listo, en principio ya estaría todo hecho.
Si te defiendes con la programación y quieres evitar la instalación de un plugin, también puedes activar el https manualmente, haciendo redirecciones 301 a través del fichero .htaccess.
Opción recomendada para aquellos que saben lo que hacen, porque hay que tocar código y cualquier fallo puede ocasionarnos un grave problema.
Por eso, antes de tocar nada, lo primero es que realices una copia de seguridad.
Para acceder al archivo .htaccess, debes conectarte por vía FTP a los archivos de tu sitio web.
Puedes hacerlo a través de un server como Filezilla o desde el panel de control de tu hosting, pinchando en el icono “Administración de Archivos”.
El fichero .htaccess debe estar en la raíz de los archivos de tu sitio web (asegúrate de que puedas ver los elementos ocultos).
Edítalo (haciendo previamente una copia, como hemos dicho) e introduce el siguiente código:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Guarda el archivo.
Este código hace que los recursos del sitio web (urls, imágenes, etc) estén forzados a cargarse en https.
No obstante, puede que el área de administración de tu WordPress se siga ejecutando con HTTP.
Para solucionarlo, edita el archivo wp-config.php (ubicado también en la raíz) y añade esta línea de código:
define('FORCE_SSL_ADMIN', true);
Guarda el archivo.
Accede a tu página web y observa la barra del navegador.
Si ves un candado, significa que está todo solucionado y tu web ya se carga con HTTPS.
Si, por el contrario, ves un candado roto y al pinchar aparece el texto “Tu Conexión con este sitio no es completamente segura”, significa que tienes contenido mixto en tu página, es decir, tienes recursos ejecutándose con HTTPS pero aún quedan algunos elementos o contenidos que se muestran con HTTP.
No te preocupes, es un problema muy común y que tiene fácil solución.
Primero, si quieres saber qué recursos son esos, pincha con el botón derecho en cualquier área de tu web, haz clic en Inspeccionar y después en Console.
Para solventarlo, instala y activa el plugin Better Search Replace en tu WordPress.
Este plugin es muy útil para hacer cualquier modificación en las urls de tu página porque modifica directamente las tablas de la base de datos. Aunque precisamente por eso, debes tener cuidado con él.
Una vez lo actives, en el apartado Herramientas verás la pestaña Better Search Replace. Entra aquí.
En el campo Buscar, pon la url de tu dominio con HTTP y en el campo Reemplazar, pon la url con HTTPS.
Selecciona todas las tablas para que el cambio afecte a todo el contenido del sitio web, y pincha en el botón de ejecutar.
Y listo.
Con esto ya tendrás tu web con HTTPS activado.