Cómo configurar SSL/HTTPS en PrestaShop con Let's Encrypt (cPanel)
¡Hola! Si estás leyendo esto, seguramente quieres dar el salto a la seguridad y la confianza que ofrece el cifrado SSL/HTTPS en tu tienda PrestaShop. Es un paso fundamental no solo para proteger los datos de tus clientes, sino también para mejorar tu posicionamiento en Google.
La buena noticia es que no necesitas gastar dinero en certificados costosos. Vamos a usar Let's Encrypt, que es gratuito, automático y de confianza. Y lo haremos desde cPanel, el panel de control más común en el alojamiento web.
Este artículo es una guía paso a paso, pensada para que cualquier persona, incluso sin experiencia técnica, pueda configurarlo. Vamos a ello.
¿Por qué es tan importante activar HTTPS en PrestaShop?
Antes de ponernos manos a la obra, es crucial entender por qué este cambio es tan beneficioso para tu negocio online.
Seguridad para tus clientes (y para ti)
SSL (Secure Sockets Layer) y su sucesor TLS (Transport Layer Security) son protocolos que cifran la información que viaja entre el navegador del usuario y tu servidor. Imagina que envías una carta; sin SSL, es como enviar una postal que cualquiera puede leer en el camino. Con SSL, es como enviar una caja fuerte sellada. Esto es vital cuando tus clientes introducen contraseñas, direcciones o datos de tarjetas de crédito.
Confianza y credibilidad
Los navegadores modernos (Chrome, Firefox, Safari) muestran un candado cerrado en la barra de direcciones cuando un sitio usa HTTPS. Si no lo haces, mostrarán una advertencia de "No seguro" que ahuyentará a cualquier visitante. Un candado cerrado transmite profesionalidad y les da a tus clientes la tranquilidad de que están en un sitio legítimo y seguro.
Posicionamiento SEO
Desde hace años, Google utiliza el HTTPS como una señal de clasificación (ranking). Aunque es un factor de peso menor comparado con otros, es un paso que debes dar sí o sí. Un sitio con HTTPS tiene una ligera ventaja sobre uno que no lo tiene. Además, al evitar las advertencias de "No seguro", reduces la tasa de rebote (personas que entran y se van inmediatamente), lo cual también es una señal positiva para Google.
Requisitos previos: Lo que necesitas para empezar
Para seguir esta guía sin contratiempos, necesitas:
- Acceso a cPanel: Las credenciales de tu cuenta de hosting.
- Un dominio apuntando a tu hosting: El dominio que quieres proteger debe estar correctamente conectado a tu servidor. Normalmente esto ya está hecho si tu tienda está funcionando.
- PrestaShop instalado y funcionando: Es más fácil hacer este cambio antes de lanzar la tienda, pero también se puede hacer con la tienda en producción (con cuidado).
- Acceso a tu panel de administración de PrestaShop: Lo necesitaremos para los últimos pasos.
Paso 1: Activar SSL en cPanel (La parte del servidor)
El primer paso es generar e instalar el certificado Let's Encrypt en tu servidor. Esto se hace desde cPanel.
Localizar el icono de "SSL/TLS Status" o "Let's Encrypt"
Dependiendo de tu proveedor de hosting, el icono puede llamarse de una forma u otra. Busca en la sección de Seguridad o directamente el nombre "Let's Encrypt". A veces, está integrado en el icono de SSL/TLS Status.
Emitir el certificado
- Accede a cPanel: Introduce tu usuario y contraseña.
- Busca la sección "Seguridad": Haz clic en el icono de SSL/TLS Status o Let's Encrypt.
- Selecciona tu dominio: En la lista de dominios, busca el tuyo (por ejemplo,
tutienda.com). Es posible que también veas opciones parawww.tutienda.com. - Haz clic en "Ejecutar" o "Emitir": La interfaz te mostrará el estado actual del SSL. Si no está instalado, verás un botón para emitirlo o instalarlo. Haz clic en él.
- Espera unos segundos: El proceso es automático. cPanel se comunicará con Let's Encrypt para verificar que eres el dueño del dominio y emitirá el certificado.
- Verifica: Una vez completado, verás un mensaje de éxito. Asegúrate de que tanto
tutienda.comcomowww.tutienda.comtengan el certificado activo. Si no, repite el proceso para el subdominiowww.
[TIP]
Si tu hosting es con Syspanel (antes HestiaCP), el proceso es similar, pero el acceso a su panel es a través del puerto2106. Busca la sección de "Web" y luego "SSL Certificates" para emitir el certificado Let's Encrypt.
Paso 2: Configurar PrestaShop para usar HTTPS
Ahora que el servidor tiene el certificado, tenemos que decirle a PrestaShop que lo use. Esto se hace en dos lugares: la configuración general y el archivo de configuración.
2.1. Activar SSL desde el Panel de Administración
Esta es la forma más fácil y recomendada.
- Accede a tu Panel de Administración de PrestaShop: Normalmente en
tudominio.com/admin. - Ve al menú "Configuración Avanzada": En el menú lateral izquierdo, busca la pestaña "Configuración Avanzada".
- Haz clic en "Rendimiento": Dentro de ese menú, encontrarás la opción "Rendimiento".
- Busca la opción "Activar SSL": En la parte superior de la página de Rendimiento, verás una opción que dice "Activar SSL" y otra que dice "Activar SSL en todas las páginas".
- Activar SSL: Esta opción activa el HTTPS en las páginas de autenticación (login, registro, etc.).
- Activar SSL en todas las páginas: Esta es la que queremos. Fuerza a que todas las páginas de tu tienda usen HTTPS.
- Selecciona "Sí" en ambas opciones y haz clic en el botón "Guardar".
[INFO]
En versiones más recientes de PrestaShop (1.7 y 8.x), esta opción puede estar en "Configuración Avanzada > Rendimiento". En versiones antiguas (1.6), estaba en "Preferencias > General". Si no la encuentras, usa el buscador del admin.
2.2. Forzar HTTPS desde el archivo config/settings.inc.php (Método manual de respaldo)
Si por alguna razón el panel de administración no te funciona o quieres asegurarte al 100%, puedes hacerlo manualmente. Esto es un poco más técnico, pero es infalible.
-
Accede a tu hosting a través de un Administrador de Archivos (desde cPanel) o un cliente FTP (como FileZilla).
-
Navega a la carpeta raíz donde está instalado PrestaShop (normalmente
public_html). -
Busca la carpeta
configy dentro de ella, el archivosettings.inc.php. -
Edita el archivo: Haz clic derecho y selecciona "Editar" o "Edit".
-
Busca las siguientes líneas (pueden variar ligeramente según la versión):
define('_PS_SSL_ENABLED_', '0'); -
Cambia el
'0'por'1'para activar SSL:define('_PS_SSL_ENABLED_', '1'); -
Guarda el archivo y ciérralo.
[WARNING]
Ten mucho cuidado al editar este archivo. Asegúrate de solo cambiar el valor de_PS_SSL_ENABLED_. No modifiques ninguna otra línea, ya que podrías romper tu tienda. Si no te sientes cómodo, es mejor usar el método del panel de administración.
Paso 3: La Redirección 301 (El paso más importante para el SEO)
Activar el SSL es la mitad del trabajo. La otra mitad es asegurarte de que todo el tráfico que llegue a tu web vaya automáticamente a la versión HTTPS. Sin una redirección, un usuario podría entrar a http://tutienda.com y ver una página sin cifrar, o peor aún, una versión duplicada de tu tienda, lo cual es malo para el SEO.
Para hacer esto, editaremos el archivo .htaccess, que es un archivo de configuración del servidor Apache. Antes de hacer nada, haz una copia de seguridad de este archivo.
-
Encuentra el archivo
.htaccess: Está en la raíz de tu instalación de PrestaShop (normalmente enpublic_html). Es un archivo oculto, así que asegúrate de que tu administrador de archivos o cliente FTP tenga la opción de "mostrar archivos ocultos" activada. -
Descárgalo y haz una copia de seguridad en tu ordenador.
-
Edita el archivo
.htaccess: Ábrelo con un editor de texto plano (como el Bloc de notas o Sublime Text). -
Añade el siguiente código al principio del archivo (justo después de la primera línea
# ~~startsi existe, o al principio del todo). Este es el código estándar para la redirección:# Redirección de HTTP a HTTPS <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] </IfModule>Este código le dice al servidor: "Si alguien entra por HTTP, haz una redirección permanente (301) a la misma página pero usando HTTPS".
-
Guarda el archivo y súbelo de nuevo a tu servidor, reemplazando el original.
[WARNING]
Si PrestaShop tiene su propio bloque de reglasRewriteen el.htaccess(que es muy probable), este código debe ir ANTES de ese bloque, pero DESPUÉS de la líneaRewriteEngine onque PrestaShop ya tiene. Si lo pones al principio y PrestaShop ya tieneRewriteEngine on, no pasa nada, pero es más seguro ponerlo justo después de la primera línea de comentario de PrestaShop. Si ves que tu tienda da error 500, restaura la copia de seguridad que hiciste.
Paso 4: Verificación y solución de problemas
Una vez hecho todo, es hora de comprobar que todo funciona.
Comprobar que todo está correcto
- Prueba la redirección: Escribe
http://tudominio.comen tu navegador. Deberías ser redirigido automáticamente ahttps://tudominio.com. - Busca el candado: En la barra de direcciones, deberías ver el icono de un candado cerrado. Haz clic en él para ver los detalles del certificado. Debería decir "Conexión segura" y el nombre de Let's Encrypt.
- Navega por tu tienda: Visita varias páginas, como una categoría, un producto y el carrito. Asegúrate de que todas las URLs comiencen con
https://. - Usa herramientas online: Puedes usar herramientas como "SSL Labs" o "Why No Padlock" para analizar tu sitio en busca de errores de "contenido mixto".
Problemas comunes y cómo solucionarlos
-
Error de "Contenido Mixto": Esto ocurre cuando tu página se carga por HTTPS pero tiene recursos (imágenes, scripts, CSS) que se cargan por HTTP. El navegador los bloquea por seguridad. Para solucionarlo:
- En PrestaShop: Ve a "Configuración Avanzada > Rendimiento" y activa la opción "Forzar la compilación de los templates" y guarda. Luego desactívala y guarda de nuevo. Esto regenera los archivos de plantilla con las URLs HTTPS.
- En la Base de Datos: Si el problema persiste, puede que tengas URLs antiguas guardadas en la base de datos. Puedes usar una consulta SQL en phpMyAdmin para reemplazar
http://tudominio.comporhttps://tudominio.comen las tablas de PrestaShop. ¡Haz una copia de seguridad de tu BD antes de hacer esto!
-
El candado no aparece o aparece un candado con un signo de exclamación: Esto es un indicativo de contenido mixto. Sigue el paso anterior.
-
Error 500 (Internal Server Error): Esto suele ser un problema con el archivo
.htaccess. Revisa que el código que añadiste esté bien escrito y que no haya conflictos con las reglas de PrestaShop. Si no puedes arreglarlo, restaura la copia de seguridad del.htaccess. -
El bucle de redirección (ERR_TOO_MANY_REDIRECTS): Esto puede pasar si hay una regla de redirección mal configurada o si PrestaShop y el
.htaccessestán en conflicto. Asegúrate de que solo tienes una regla de redirección. A veces, el plugin de "Forzar HTTPS" de tu hosting puede estar interfiriendo.
Preguntas Frecuentes (FAQ)
¿Let's Encrypt es realmente gratuito?
Sí, es un certificado 100% gratuito y de código abierto. Es mantenido por una organización sin fines de lucro (Internet Security Research Group). La única "pega" es que los certificados caducan cada 90 días, pero cPanel los renueva automáticamente si tienes la opción de "Auto-renew" activada (que suele estar activada por defecto).
¿Necesito un certificado diferente para www.tudominio.com y tudominio.com?
No, con Let's Encrypt y cPanel, puedes (y debes) emitir un certificado que cubra ambos. Es lo que se llama un certificado "wildcard" o que incluye el subdominio www. En cPanel, al emitir el certificado, selecciona tanto el dominio raíz como el www.
¿Perderé posiciones en Google si cambio a HTTPS?
No. Al contrario, es una señal positiva. Solo asegúrate de configurar la redirección 301 correctamente (como hicimos en el Paso 3) para que Google entienda que el sitio ha cambiado permanentemente de dirección y no lo vea como contenido duplicado.
¿Qué pasa si mi hosting no tiene cPanel?
La mayoría de los hosting usan cPanel. Si el tuyo usa otro panel (como Plesk o Syspanel), el proceso es similar. Busca la sección de "SSL/TLS" o "Let's Encrypt". En el caso de Syspanel (antes HestiaCP), recuerda que el acceso es por el puerto 2106 y la gestión del certificado se encuentra dentro de la sección "Web".
¿Cuánto tiempo tarda en activarse todo el proceso?
La emisión del certificado con Let's Encrypt suele tardar menos de un minuto. La configuración de PrestaShop y la redirección te llevarán unos 10-15 minutos más, dependiendo de tu velocidad.
Conclusión
¡Enhorabuena! Has dado un paso enorme para profesionalizar tu tienda online. Configurar SSL/HTTPS en PrestaShop con Let's Encrypt es un proceso muy sencillo que no solo protege a tus clientes, sino que también mejora tu imagen y tu posicionamiento web. Hemos cubierto desde la emisión del certificado en cPanel hasta la redirección 301, pasando por la configuración interna de PrestaShop y la resolución de los problemas más comunes.
Recuerda que la seguridad es un pilar fundamental en el comercio electrónico. Con este cambio, tus clientes se sentirán más seguros al comprar en tu tienda, y tú tendrás la tranquilidad de saber que estás haciendo las cosas bien. Si has seguido los pasos, tu tienda ya está navegando por el carril seguro de internet.
Si te ha quedado alguna duda, repasa los pasos o consulta con tu proveedor de hosting. ¡Nos vemos en el siguiente artículo!
