Guía para configurar HTTPS en PrestaShop con Let's Encrypt
¡Hola! Bienvenido a esta guía completa para configurar HTTPS en tu tienda PrestaShop utilizando Let's Encrypt. Soy tu técnico de soporte amigable y voy a explicarte paso a paso cómo hacer que tu tienda sea más segura y profesional con un certificado SSL gratis.
Tener HTTPS en tu tienda PrestaShop no solo es una cuestión de seguridad, sino también de confianza para tus clientes y de posicionamiento SEO. Google prioriza los sitios con HTTPS, y los navegadores modernos marcan como "No seguro" cualquier sitio que no lo tenga. Además, protegerás los datos de tus clientes (como contraseñas y pagos) mediante cifrado.
En esta guía, cubriremos desde qué es Let's Encrypt, cómo instalarlo en tu servidor (usando cPanel, Syspanel/HestiaCP o línea de comandos), y cómo forzar HTTPS en PrestaShop. También resolveremos problemas comunes como el temido error de "contenido mixto".
¿Listo? ¡Empecemos!
¿Qué es Let's Encrypt y por qué usarlo?
Let's Encrypt es una autoridad de certificación (CA) gratuita, automatizada y abierta. Básicamente, te permite obtener un certificado SSL gratis para tu dominio. A diferencia de los certificados de pago, estos son válidos por 90 días, pero se renuevan automáticamente si configuras bien el proceso.
Ventajas clave:
- Es 100% gratuito. No hay costos ocultos.
- Es automatizable. Con herramientas como Certbot o los plugins de cPanel, la renovación es automática.
- Es ampliamente aceptado. Todos los navegadores modernos lo reconocen como válido.
- Mejora el SEO. Google da un pequeño impulso a los sitios con HTTPS.
[INFO] Aunque el certificado caduca cada 90 días, la mayoría de los paneles de control (cPanel, Syspanel) lo renuevan automáticamente. Si usas un VPS sin panel, deberás configurar un cron job.
Paso 1: Verifica los requisitos previos
Antes de instalar el certificado, asegúrate de que tu servidor cumpla con lo siguiente:
- Tener un dominio apuntando a tu servidor. El certificado se emite para un nombre de dominio específico (ej.
tutienda.comywww.tutienda.com). - Acceso a tu panel de control (cPanel, Syspanel, Plesk, o acceso SSH si es VPS).
- PrestaShop ya instalado y funcionando (aunque sea en HTTP).
- Puertos 80 (HTTP) y 443 (HTTPS) abiertos en el firewall de tu servidor.
[WARNING] Si tu servidor está detrás de un CDN como Cloudflare, primero deberás desactivar el proxy (nube naranja) para que Let's Encrypt pueda verificar el dominio. Luego, al terminar, puedes reactivar el proxy con SSL flexible o completo.
Paso 2: Instalar el certificado SSL con Let's Encrypt
La forma más sencilla depende del panel de control que uses. Vamos a ver los tres casos más comunes.
Opción A: Usando cPanel (la mayoría de los hosting compartidos)
cPanel suele incluir un plugin llamado "AutoSSL" o "Let's Encrypt SSL". Sigue estos pasos:
- Inicia sesión en cPanel. Generalmente accedes a
tudominio.com/cpanelotudominio.com:2083. - Busca la sección "SSL/TLS" o "Seguridad". Puede llamarse "SSL/TLS Status" o "Let's Encrypt SSL".
- Haz clic en "Manage SSL Sites" o "Install an SSL Certificate".
- Selecciona tu dominio de la lista desplegable. Asegúrate de incluir tanto
tudominio.comcomowww.tudominio.com. - Haz clic en "Autofill by Domain" o "Generate, install and activate". El sistema generará automáticamente el certificado.
- Espera unos segundos. Verás un mensaje de éxito.
- Verifica la instalación visitando
https://tudominio.com(deberías ver el candado verde).
[TIP] En cPanel, también puedes usar el plugin "AutoSSL" que instala automáticamente certificados para todos los dominios alojados. Solo debes asegurarte de que esté activo en "SSL/TLS Status".
Opción B: Usando Syspanel (HestiaCP) con puerto 2106
Si tu hosting usa Syspanel (el nombre amigable para HestiaCP), el proceso es igual de sencillo pero debes acceder por el puerto especial.
- Accede a tu Syspanel. Abre tu navegador y escribe:
https://tudominio.com:2106 - Inicia sesión con tus credenciales de administrador.
- Ve a "Web" o "Dominios" en el menú lateral.
- Haz clic en el icono de edición (lápiz) junto al dominio de tu tienda PrestaShop.
- Busca la sección "SSL" o "Let's Encrypt Support". Marca la casilla que dice "Habilitar Let's Encrypt".
- Selecciona los subdominios que deseas proteger (generalmente
wwwy el dominio principal). - Haz clic en "Guardar" o "Actualizar".
- Espera unos segundos. Syspanel se comunicará con Let's Encrypt y generará el certificado automáticamente.
- Verifica que ahora tu dominio carga con HTTPS.
[INFO] Syspanel (HestiaCP) renueva automáticamente los certificados cada 90 días mediante un cron job interno. No necesitas hacer nada más.
Opción C: Usando SSH (para VPS sin panel)
Si tienes un VPS con Ubuntu/Debian y no usas panel, puedes instalar Certbot manualmente.
- Conéctate a tu servidor por SSH.
- Instala Certbot:
(Si usas Nginx, cambiasudo apt update sudo apt install certbot python3-certbot-apacheapachepornginx) - Ejecuta Certbot para tu dominio:
sudo certbot --apache -d tudominio.com -d www.tudominio.com - Sigue las instrucciones interactivas. Te pedirá tu correo electrónico y aceptar los términos de servicio.
- Selecciona si quieres redirigir todo el tráfico HTTP a HTTPS (recomendado).
- Certbot configurará automáticamente Apache/Nginx y activará el certificado.
- Para renovación automática, verifica que el cron job esté activo:
Si funciona, se renovará automáticamente.sudo certbot renew --dry-run
Paso 3: Configurar PrestaShop para forzar HTTPS
Una vez que el certificado SSL está instalado, debes decirle a PrestaShop que use HTTPS de forma obligatoria.
3.1. Configuración desde el Back Office
- Inicia sesión en el Back Office de PrestaShop (normalmente en
tudominio.com/admin). - Ve al menú "Configurar" > "Parámetros de la tienda" > "General".
- Busca la opción "Habilitar SSL" y cámbiala a "Sí".
- Busca "Habilitar SSL en todas las páginas" y también ponla en "Sí".
- Guarda los cambios.
[WARNING] Al activar SSL, PrestaShop puede tardar unos segundos en responder. Si ves un error de "redirigiendo demasiadas veces", no te preocupes, lo solucionaremos en el paso de solución de problemas.
3.2. Verificar la URL de la tienda
- En el mismo menú "General", busca "URL de la tienda".
- Asegúrate de que la URL base comience con
https://(ej.https://tudominio.com). - Guarda los cambios.
3.3. Forzar HTTPS desde el archivo .htaccess (opcional pero recomendado)
Si PrestaShop no redirige bien automáticamente, puedes agregar una regla manual en el archivo .htaccess de la raíz de tu tienda.
- Accede a los archivos de tu tienda (por FTP o desde el administrador de archivos de cPanel/Syspanel).
- Edita el archivo
.htaccess(haz una copia de seguridad antes). - Agrega estas líneas al principio del archivo, justo después de
RewriteEngine On:RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] - Guarda el archivo.
[TIP] Si tu servidor usa Nginx, no uses .htaccess. En su lugar, deberás modificar la configuración del servidor virtual (vhost) para agregar la redirección 301. Si no sabes cómo, contacta a tu proveedor de hosting.
Paso 4: Solucionar problemas comunes (FAQ)
Aquí tienes las preguntas más frecuentes que resolvemos en soporte técnico.
¿Por qué veo "Contenido mixto" (Mixed Content) en mi tienda?
Esto ocurre cuando tu página carga en HTTPS, pero algunos recursos (imágenes, CSS, JavaScript) se cargan desde URLs HTTP. El navegador bloquea estos recursos por seguridad, lo que puede romper el diseño o funcionalidades.
Solución:
- Usa la herramienta "Inspeccionar" de tu navegador (F12) y ve a la consola. Verás errores como "Mixed Content".
- En PrestaShop, activa la opción "Usar HTTPS para todo el contenido" (ya lo hicimos en el paso 3.1).
- Actualiza las URLs de tus imágenes. Si subiste imágenes con URLs absolutas (ej.
http://...), debes cambiarlas a relativas o ahttps://. Puedes usar un plugin de búsqueda y reemplazo en la base de datos. - Revisa los módulos de terceros. Algunos módulos antiguos pueden cargar recursos desde HTTP. Actualízalos o contacta al desarrollador.
Tras activar SSL, la tienda me da error "Demasiadas redirecciones"
Esto suele pasar por un bucle de redirección entre el servidor y PrestaShop.
Soluciones:
- Desactiva temporalmente la redirección forzada en .htaccess (comenta las líneas que agregaste).
- En PrestaShop, ve a "Parámetros de la tienda" > "General" y desmarca "Habilitar SSL en todas las páginas". Guarda.
- Vuelve a marcar "Habilitar SSL" (solo la primera opción) y guarda.
- Limpia la caché de PrestaShop (Configuración avanzada > Rendimiento > Limpiar caché).
- Si usas Cloudflare, asegúrate de que la opción "SSL/TLS" esté en "Full (strict)" y no en "Flexible".
¿Cómo renovar el certificado manualmente?
En cPanel y Syspanel, la renovación es automática. Si usas Certbot manualmente, puedes renovar con:
sudo certbot renew
O forzar una renovación inmediata:
sudo certbot renew --force-renewal
¿Let's Encrypt es seguro para una tienda online?
Sí, totalmente. Let's Encrypt ofrece el mismo nivel de cifrado (TLS 1.2/1.3) que los certificados de pago. La única diferencia es el período de validez (90 días vs 1-2 años). Para una tienda PrestaShop, es perfectamente seguro, siempre que mantengas la renovación activa.
¿Puedo usar Let's Encrypt con un certificado wildcard (*.tudominio.com)?
Sí, pero no es necesario para PrestaShop. Let's Encrypt permite wildcards desde 2018, pero requieren validación por DNS (debes agregar un registro TXT en tu DNS). Para una tienda, con el dominio principal y www es suficiente.
Paso 5: Verificar que todo funciona correctamente
Después de la configuración, realiza estas comprobaciones:
- Visita
https://tudominio.comy asegúrate de que aparezca el candado verde. - Haz clic en el candado y selecciona "Certificado" para ver la información (emitido por Let's Encrypt, fecha de caducidad).
- Navega por varias páginas de la tienda (categorías, producto, carrito, checkout) y verifica que todas carguen con HTTPS.
- Usa herramientas online como SSL Labs para obtener una calificación de seguridad (idealmente A o A+).
- Prueba el proceso de compra (puedes usar un modo de prueba) para asegurarte de que no hay errores de contenido mixto.
Conclusión: Tu tienda PrestaShop ahora es más segura
¡Felicidades! Has configurado HTTPS en tu tienda PrestaShop con Let's Encrypt. Ahora tus clientes verán el candado de seguridad, Google te recompensará en posicionamiento y los datos estarán cifrados.
Recuerda que la seguridad es un proceso continuo. Además del SSL, te recomiendo:
- Mantener PrestaShop y sus módulos actualizados.
- Usar contraseñas fuertes.
- Hacer copias de seguridad periódicas.
- Considerar un firewall de aplicación web (WAF) si tu tienda tiene mucho tráfico.
Si tienes alguna duda, no dudes en contactar a tu proveedor de hosting o dejar un comentario. ¡Estamos aquí para ayudarte!
[INFO] Esta guía ha sido escrita pensando en usuarios sin experiencia técnica. Si algo no queda claro, repite los pasos con calma. La mayoría de los problemas se resuelven con paciencia y siguiendo el orden correcto.
