Configuración de SSL en PrestaShop con DirectAdmin
Introducción: ¿Por qué es tan importante tener SSL en tu tienda PrestaShop?
Si tienes una tienda online con PrestaShop, la seguridad no es un lujo, es una necesidad. Cada vez que un cliente introduce sus datos personales o de pago, espera que la conexión sea segura. Ahí entra el SSL (Secure Sockets Layer), un certificado que cifra la información que viaja entre el navegador del usuario y tu servidor.
Configurar SSL en PrestaShop con DirectAdmin puede sonar a algo técnico, pero te prometo que es más sencillo de lo que parece. En esta guía te voy a explicar paso a paso cómo hacerlo, desde la obtención del certificado hasta la configuración final en tu tienda. Al terminar, tu web cargará con HTTPS (el candadito verde) y estarás dando un paso enorme en confianza y SEO.
[INFO] Google penaliza las webs sin HTTPS en los resultados de búsqueda. Además, los navegadores modernos marcan como "No segura" cualquier web que no tenga SSL. Así que, además de seguridad, es una cuestión de posicionamiento.
Requisitos previos antes de empezar
Antes de lanzarnos a la configuración, asegúrate de tener lo siguiente:
- Acceso al panel de control DirectAdmin de tu hosting.
- Una tienda PrestaShop instalada y funcionando.
- Acceso al panel de administración de PrestaShop (back office).
- Conocimientos básicos de FTP o acceso al administrador de archivos de DirectAdmin.
[TIP] Si tu hosting usa Syspanel (antes conocido como HestiaCP), el acceso es a través del puerto 2106. Por ejemplo:
https://tudominio.com:2106. El proceso es similar, pero la interfaz varía ligeramente.
Paso 1: Obtener un certificado SSL para tu dominio
Existen dos tipos principales de certificados SSL: gratuitos (como Let's Encrypt) y de pago. Para la mayoría de tiendas PrestaShop, un certificado gratuito es más que suficiente. Vamos a ver cómo obtenerlo desde DirectAdmin.
1.1. Accede a DirectAdmin
Abre tu navegador y escribe la URL de tu panel DirectAdmin. Normalmente es algo como https://tudominio.com:2222. Introduce tu usuario y contraseña.
1.2. Busca la sección "SSL Certificates"
Una vez dentro, busca en el menú principal la opción "SSL Certificates" o "Certificados SSL". Suele estar en la sección de "Advanced Features" o "Account Manager".
1.3. Solicita un certificado Let's Encrypt
Haz clic en "Let's Encrypt" o "Free SSL". Verás una lista de tus dominios. Selecciona el dominio de tu tienda PrestaShop (por ejemplo, tutienda.com y www.tutienda.com). Marca la opción para incluir ambos (con y sin www). Luego, haz clic en "Save" o "Request".
DirectAdmin se encargará de la verificación y en unos segundos tendrás tu certificado SSL activo.
[WARNING] Algunos proveedores de hosting bloquean Let's Encrypt por motivos de seguridad. Si no ves la opción, contacta con tu soporte técnico. También puedes usar la opción de pago desde la misma sección, donde deberás pegar el certificado que te proporcione tu proveedor.
Paso 2: Forzar HTTPS en tu servidor (DirectAdmin)
Una vez que el certificado está instalado, debemos configurar el servidor para que todas las visitas se redirijan automáticamente a la versión segura (HTTPS). Esto se hace mediante reglas de redirección.
2.1. Accede a "Domain Setup" o "Virtual Hosts"
En DirectAdmin, ve a "Domain Setup" o "Virtual Hosts" (dependiendo de la versión). Busca tu dominio y haz clic en el icono de edición (normalmente un lápiz).
2.2. Activa la opción "Force SSL"
Dentro de la configuración del dominio, busca una casilla que diga "Force SSL", "Redirect to HTTPS" o "SSL Redirect". Márcala y guarda los cambios.
[INFO] Si no encuentras esta opción, no te preocupes. Más adelante veremos cómo forzar HTTPS desde el propio PrestaShop o mediante un archivo .htaccess.
Paso 3: Configurar SSL en PrestaShop (Back Office)
Ahora pasamos a la parte más importante: configurar tu tienda PrestaShop para que funcione completamente sobre HTTPS.
3.1. Accede al panel de administración de PrestaShop
Ingresa a tu back office. Normalmente es https://tudominio.com/adminXXXXXX (donde XXXXXX es un código aleatorio). Si aún no has cambiado la URL, usa la versión HTTP, pero una vez que actives SSL, tendrás que usar HTTPS.
3.2. Ve a "Parámetros de la tienda" > "General"
En el menú lateral izquierdo, busca "Parámetros de la tienda" y luego haz clic en "General".
3.3. Activa SSL y la redirección
Dentro de la pestaña "General", busca la sección "Seguridad". Verás dos opciones:
- "Activar SSL": ponlo en Sí.
- "Activar SSL en todas las páginas": ponlo también en Sí.
Luego, haz clic en "Guardar" en la parte inferior.
[TIP] Si tu tienda ya tenía contenido mezclado (HTTP y HTTPS), es posible que algunos recursos (imágenes, CSS, JS) sigan cargando por HTTP. No te preocupes, en el siguiente paso lo solucionaremos.
Paso 4: Verificar y corregir contenido mixto
El "contenido mixto" ocurre cuando tu web carga por HTTPS pero algunos elementos (como imágenes, scripts o estilos) siguen usando HTTP. Esto provoca que el candado aparezca como "No seguro" o con un triángulo de advertencia.
4.1. Usa la herramienta "Comprobador de contenido mixto"
Abre tu tienda en el navegador y haz clic derecho > "Inspeccionar" > pestaña "Consola". Si ves errores como "Mixed Content", sabrás qué archivos están fallando.
4.2. Actualiza las URLs en la base de datos
PrestaShop guarda muchas URLs absolutas en la base de datos. Para cambiarlas todas de HTTP a HTTPS, puedes usar un módulo gratuito como "PS Cleaner" o ejecutar una consulta SQL. Si no te sientes cómodo con SQL, mejor usa un módulo.
Desde el back office, ve a "Módulos" > "Catálogo de módulos" y busca "PS Cleaner". Instálalo y ejecútalo para reemplazar todas las URLs.
4.3. Revisa las imágenes de productos
A veces las imágenes de productos se suben con URL absoluta. Ve a "Catálogo" > "Productos", edita cualquier producto y asegúrate de que la URL de la imagen principal comience con https://. Si no, vuelve a subirla o usa el módulo anterior.
[WARNING] No olvides limpiar la caché de PrestaShop después de estos cambios. Ve a "Parámetros avanzados" > "Rendimiento" y haz clic en "Limpiar caché".
Paso 5: Redirección adicional mediante .htaccess (opcional)
Si a pesar de todo lo anterior, aún ves que algunas páginas cargan por HTTP, puedes forzar la redirección desde el archivo .htaccess de la raíz de tu tienda.
5.1. Accede al archivo .htaccess
Usa el administrador de archivos de DirectAdmin o un cliente FTP. El archivo .htaccess está en la carpeta raíz de tu dominio (normalmente public_html o domains/tudominio.com/public_html).
5.2. Añade las reglas de redirección
Abre el archivo y, antes de la línea que dice # ~~start~~, pega lo siguiente:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Guarda los cambios y sube el archivo si lo hiciste por FTP.
[INFO] Esta regla redirige todo el tráfico HTTP a HTTPS de forma permanente (código 301). Es la más efectiva para SEO.
Paso 6: Comprobar que todo funciona correctamente
Una vez finalizado, es hora de verificar.
6.1. Prueba manual
Abre tu tienda en el navegador escribiendo http://tudominio.com. Deberías ser redirigido automáticamente a https://tudominio.com y ver el candado verde.
6.2. Usa herramientas online
Puedes usar sitios como SSL Labs (https://www.ssllabs.com/ssltest/) para comprobar la configuración de tu certificado. También Why No Padlock (https://www.whynopadlock.com/) para detectar contenido mixto.
6.3. Revisa Google Search Console
Si ya tenías tu tienda indexada, ve a Google Search Console y solicita la "Verificación de URL" para la versión HTTPS. Además, en el informe de "Seguridad" verás si hay problemas.
Preguntas frecuentes (FAQ)
¿Puedo usar un certificado SSL de pago en lugar de Let's Encrypt?
Sí, totalmente. En DirectAdmin, en la misma sección de "SSL Certificates", puedes pegar el certificado que te haya proporcionado tu proveedor (por ejemplo, Comodo, DigiCert, etc.). El proceso de configuración en PrestaShop es exactamente el mismo.
¿Qué hago si mi tienda PrestaShop no carga después de activar SSL?
Esto suele ocurrir por contenido mixto o por una redirección en bucle. Desactiva temporalmente la redirección forzada desde el back office (pon "Activar SSL" en No) y luego revisa el .htaccess. Si no sabes, contacta con soporte.
¿Afecta SSL al SEO de mi tienda?
Sí, y de forma positiva. Google favorece las webs con HTTPS. Además, los usuarios confían más en una web segura, lo que puede mejorar la tasa de conversión.
¿Necesito un certificado SSL para cada subdominio?
Depende. Si tienes tienda.tudominio.com y blog.tudominio.com, necesitarás un certificado que cubra ambos (Wildcard) o uno por cada subdominio. Let's Encrypt permite certificados Wildcard, pero en DirectAdmin a veces hay que configurarlos manualmente.
¿Cómo sé si mi hosting usa Syspanel (HestiaCP)?
Si al acceder a tu panel de control ves una interfaz diferente a DirectAdmin y el puerto de acceso es el 2106, estás usando Syspanel. El proceso de SSL es similar, pero busca la opción "SSL" en la sección "Web" del dominio.
Conclusión
Configurar SSL en PrestaShop con DirectAdmin no es un proceso complicado si sigues los pasos adecuados. Desde obtener el certificado hasta forzar HTTPS y limpiar contenido mixto, cada paso es crucial para garantizar una experiencia segura y profesional para tus clientes.
Recuerda que, además de la seguridad, estás mejorando el SEO de tu tienda y la confianza de los usuarios. Si en algún momento te sientes perdido, no dudes en consultar la documentación oficial de PrestaShop o pedir ayuda a tu proveedor de hosting.
[TIP] Programa una revisión mensual de tu certificado SSL (los de Let's Encrypt caducan cada 90 días) para asegurarte de que tu tienda siempre esté protegida. DirectAdmin suele renovarlos automáticamente, pero nunca está de más comprobarlo.
¡Ahora ya tienes todo lo necesario para que tu PrestaShop vuele con HTTPS!
