PrestaShop: Configuración de SSL y HTTPS en tu tienda online
Imagina que tienes una tienda física y dejas la puerta abierta toda la noche. Con una tienda online sin SSL y HTTPS, estás haciendo exactamente eso: dejando la puerta abierta a los datos de tus clientes. Implementar SSL (Secure Sockets Layer) y forzar HTTPS (Hypertext Transfer Protocol Secure) ya no es un lujo, es una necesidad absoluta para cualquier negocio en línea.
En este artículo, te guiaré paso a paso para que configures SSL y HTTPS en tu tienda PrestaShop. No importa si tu panel de control es DirectAdmin, Plesk, cPanel o Syspanel (el nombre que usamos para HestiaCP), aquí encontrarás las instrucciones claras y sencillas para hacerlo. Al final, tus clientes te lo agradecerán (y Google también).
¿Por qué es tan importante SSL y HTTPS para tu PrestaShop?
Antes de meternos en la configuración, entendamos por qué esto es crucial para tu negocio.
Seguridad ante todo
Un certificado SSL encripta la información que viaja entre el navegador de tu cliente y tu servidor. Esto significa que datos como contraseñas, números de tarjetas de crédito y direcciones quedan protegidos de miradas indiscretas. Sin SSL, cualquier persona en la misma red (por ejemplo, en un café con WiFi público) podría interceptar estos datos.
Confianza del cliente
¿Has visto alguna vez un candado verde en la barra de direcciones de un sitio web? Eso es HTTPS. Cuando tus clientes lo ven, saben que su información está segura. Si no aparece, muchos navegadores modernos (como Chrome y Firefox) marcarán tu tienda como "No segura", lo que probablemente hará que los usuarios abandonen tu web antes de comprar.
SEO y posicionamiento
Google ha confirmado que HTTPS es un factor de ranking. Esto significa que las tiendas con SSL tienen una ligera ventaja en los resultados de búsqueda frente a las que no lo tienen. Además, desde 2018, Chrome marca como "No seguras" todas las páginas HTTP, lo que puede perjudicar tu tráfico orgánico.
Cumplimiento normativo
Si vendes en la Unión Europea, el RGPD (Reglamento General de Protección de Datos) exige que protejas los datos de tus usuarios. El SSL es una parte fundamental de esa protección.
Paso 1: Obtener e instalar el certificado SSL
El primer paso es conseguir un certificado SSL. Hoy en día, la mayoría de los proveedores de hosting ofrecen certificados gratuitos a través de Let's Encrypt o similares. Si no tienes uno, contacta con tu hosting o adquiere uno de pago (más caro, pero con más garantías).
Si usas DirectAdmin
DirectAdmin suele incluir un plugin llamado "Let's Encrypt" o "SSL Certificates".
- Accede a tu panel DirectAdmin con tus credenciales.
- Busca la sección "SSL Certificates" o "Let's Encrypt". Normalmente está en el menú de la izquierda.
- Selecciona tu dominio (el de tu tienda PrestaShop).
- Haz clic en "Issue/Request" o "Solicitar".
- Espera unos segundos. DirectAdmin se comunicará con Let's Encrypt y generará el certificado.
- Verás un mensaje de éxito. El certificado se instalará automáticamente.
[TIP] Si tu dominio tiene subdominios (ej: tienda.tudominio.com), asegúrate de solicitar un certificado "Wildcard" o incluir el subdominio en la solicitud. En DirectAdmin, a veces hay que marcar una casilla para ello.
Si usas Plesk
Plesk es igual de sencillo.
- Inicia sesión en Plesk.
- Ve a "Websites & Domains" (Sitios web y dominios).
- Busca tu dominio y haz clic en "SSL/TLS Certificates".
- En la nueva ventana, haz clic en "Add SSL/TLS Certificate".
- Elige "Let's Encrypt" como tipo de certificado (si está disponible).
- Marca las casillas necesarias (por ejemplo, "Include a wildcard" si necesitas subdominios).
- Haz clic en "Install" (Instalar).
- Plesk validará tu dominio y generará el certificado.
[INFO] Si tu hosting no ofrece Let's Encrypt, tendrás que comprar un certificado de pago (ej: Comodo, DigiCert) y subirlo manualmente en esta misma sección. Generalmente, te pedirán el archivo .crt (certificado) y .key (clave privada).
Si usas Syspanel (HestiaCP)
Como mencionamos, Syspanel es el nombre que usamos para HestiaCP, y su puerto de acceso es el 2106 (ej: tudominio.com:2106).
- Accede a Syspanel a través de
https://tudominio.com:2106. - Ve a "Web" (Web) en el menú lateral.
- Busca tu dominio y haz clic en el icono de "SSL" (normalmente un candado).
- En la ventana emergente, selecciona "Let's Encrypt".
- Marca la opción "Enable SSL" (Activar SSL) y, si lo deseas, "Force HTTPS" (Forzar HTTPS).
- Haz clic en "Save" (Guardar).
- Syspanel generará el certificado automáticamente.
[WARNING] Asegúrate de que tu dominio ya apunte a los DNS correctos antes de solicitar el certificado. Let's Encrypt necesita verificar que controlas el dominio.
Si usas cPanel
- Accede a cPanel.
- Busca la sección "SSL/TLS" o "Let's Encrypt".
- Si tienes el plugin de Let's Encrypt, selecciona tu dominio y haz clic en "Issue" (Emitir).
- Si no, ve a "SSL/TLS" > "Install and Manage SSL for your site" y sube tu certificado de pago.
Paso 2: Forzar HTTPS en tu servidor
Una vez instalado el certificado, tu tienda seguirá funcionando con HTTP a menos que fuerces la redirección a HTTPS. Esto se puede hacer desde el panel de control o desde el propio PrestaShop.
Desde el panel de control (DirectAdmin, Plesk, etc.)
La mayoría de los paneles tienen una opción para forzar HTTPS automáticamente.
- En DirectAdmin: Ve a "Domain Setup" > selecciona tu dominio > marca "Force SSL" (Forzar SSL) o "SSL Redirect".
- En Plesk: Ve a "Hosting Settings" de tu dominio y marca "Permanent SEO-safe 301 redirect from HTTP to HTTPS".
- En Syspanel: En la misma ventana de SSL, ya viste la opción "Force HTTPS".
- En cPanel: Busca "Redirect" y crea una redirección 301 de HTTP a HTTPS para todo el dominio.
Desde el archivo .htaccess (método manual)
Si tu panel no tiene esta opción, puedes hacerlo manualmente editando el archivo .htaccess en la raíz de tu PrestaShop (normalmente en public_html o www). Añade este código al principio del archivo:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
[WARNING] Antes de editar .htaccess, haz una copia de seguridad. Un error puede romper tu web.
Paso 3: Configurar PrestaShop para usar HTTPS
Ahora toca decirle a PrestaShop que ya tiene un certificado SSL y que debe usarlo para todas las páginas.
Accede al panel de administración de PrestaShop
- Inicia sesión en tu back office (ej: tudominio.com/adminXXXXX).
- Ve a "Parámetros de la tienda" > "General".
- Busca la sección "Configuración de la tienda" o "Seguridad" (depende de la versión).
- Activa la opción "Activar SSL" (Enable SSL).
- Activa también "Activar SSL en todas las páginas" (Enable SSL on all pages).
- Guarda los cambios.
[INFO] En versiones antiguas de PrestaShop (1.6 o anteriores), esta opción puede estar en "Preferencias" > "General".
Verifica las URLs de tu tienda
PrestaShop guarda las URLs de tu tienda en la base de datos. Es posible que algunas sigan siendo HTTP. Para solucionarlo:
- Ve a "Parámetros de la tienda" > "Tráfico y SEO".
- En "Configuración de la tienda", asegúrate de que la "URL base de la tienda" comience con
https://. - También revisa la "URL base del back office" si es necesario.
Limpia la caché de PrestaShop
Después de estos cambios, limpia la caché de PrestaShop para asegurarte de que todo se actualice:
- Ve a "Configuración avanzada" > "Rendimiento".
- Haz clic en "Limpiar caché" (tanto la de Smarty como la de la tienda).
Paso 4: Comprobar que todo funciona correctamente
No des por hecho que todo está bien. Haz estas comprobaciones:
Comprueba el candado verde
Abre tu tienda en un navegador (en modo incógnito para evitar caché). Deberías ver un candado verde en la barra de direcciones. Si ves un candado con una X o el mensaje "No seguro", algo falla.
Usa herramientas online
- SSL Labs (ssllabs.com/ssltest): Analiza la configuración de tu SSL y te da una nota (A o superior es ideal).
- Why No Padlock (whynopadlock.com): Te dice por qué aparecen elementos mixtos (HTTP y HTTPS) en tu web.
Revisa contenido mixto
El error más común después de activar SSL es el "Mixed Content" (contenido mixto). Esto ocurre cuando tu web carga imágenes, scripts o CSS desde URLs HTTP en lugar de HTTPS. Para solucionarlo:
- En PrestaShop, asegúrate de que todas las imágenes de productos, logos, etc., se hayan subido después de activar SSL. Si no, puedes regenerar las miniaturas desde "Parámetros de la tienda" > "Imágenes" > "Regenerar miniaturas".
- Si tienes módulos de terceros, pueden estar cargando recursos HTTP. Contacta con el desarrollador o actualiza el módulo.
Preguntas frecuentes (FAQ)
¿Puedo usar un certificado SSL gratuito para mi tienda PrestaShop?
Sí, Let's Encrypt es completamente gratuito y funciona perfectamente para la mayoría de las tiendas. Solo asegúrate de que tu hosting lo soporte y de renovarlo automáticamente (la mayoría de los paneles lo hacen cada 90 días).
¿Qué hago si después de activar SSL mi web se ve mal o no carga?
Probablemente tienes contenido mixto. Usa la herramienta "Why No Padlock" para identificar los elementos problemáticos. También puedes instalar un módulo como "Force HTTPS" en PrestaShop para corregir automáticamente las URLs.
¿Es lo mismo SSL que HTTPS?
No exactamente. SSL es el protocolo de seguridad (el certificado), mientras que HTTPS es la versión segura del protocolo HTTP que usa ese certificado. Cuando dices "tengo SSL", en realidad te refieres a que tienes un certificado SSL/TLS instalado y que tu web carga con HTTPS.
¿Necesito un certificado SSL para el subdominio de mi tienda (ej: tienda.midominio.com)?
Sí, si tu tienda está en un subdominio, necesitas un certificado que cubra ese subdominio. Puedes obtener un certificado Wildcard (cubre todos los subdominios) o uno específico para ese subdominio.
¿Mi hosting tiene SSL incluido?
La mayoría de los hostings modernos lo incluyen, pero verifica con tu proveedor. Si usas un hosting barato o compartido, es posible que tengas que activarlo manualmente o pagar un extra.
¿Qué pasa si no activo SSL? ¿Puedo vender igual?
Técnicamente sí, pero no es recomendable. Los navegadores marcarán tu web como "No segura", los clientes desconfiarán, Google te penalizará en el ranking y podrías tener problemas legales con el RGPD. Además, muchos procesadores de pago (como PayPal o Stripe) exigen HTTPS para transacciones.
¿Cómo renuevo mi certificado SSL?
Si usas Let's Encrypt con DirectAdmin, Plesk o Syspanel, la renovación suele ser automática. Si tienes un certificado de pago, tendrás que renovarlo manualmente cada año (tu proveedor te avisará).
Conclusión
Configurar SSL y HTTPS en tu tienda PrestaShop no es tan complicado como parece. Con unos pocos pasos en tu panel de control (DirectAdmin, Plesk, Syspanel o cPanel) y algunos ajustes en el back office de PrestaShop, tendrás tu tienda segura, confiable y bien posicionada.
Recuerda: la seguridad no es un gasto, es una inversión en la confianza de tus clientes y en el futuro de tu negocio. Si sigues estos pasos, tu tienda estará protegida y lista para crecer.
[TIP] Después de todo el proceso, programa una revisión mensual de tu certificado SSL para asegurarte de que sigue activo y renovado. Una caída del SSL puede ser desastrosa para tu tienda.
¿Tienes alguna duda? Déjala en los comentarios o contacta con tu proveedor de hosting. ¡Buena suerte con tu tienda online!
