Guía para configurar SSL en DirectAdmin para PrestaShop
Configurar SSL en tu tienda PrestaShop alojada en un servidor con DirectAdmin es un paso fundamental para garantizar la seguridad de tus clientes y mejorar tu posicionamiento en buscadores. Un certificado SSL (Secure Sockets Layer) cifra la información que se transmite entre el navegador del usuario y tu servidor, protegiendo datos sensibles como contraseñas, números de tarjetas de crédito y direcciones de correo electrónico. Además, Google penaliza los sitios sin HTTPS, por lo que tener SSL es indispensable para el SEO de tu PrestaShop.
En esta guía completa y paso a paso, te explicaré cómo configurar SSL en DirectAdmin para tu tienda PrestaShop, desde la obtención del certificado hasta la verificación final. No necesitas ser un experto técnico; solo sigue las instrucciones al pie de la letra.
¿Qué necesitas antes de empezar?
Antes de lanzarte a la configuración, asegúrate de tener lo siguiente a mano:
- Acceso a tu panel de control DirectAdmin (generalmente en
https://tudominio.com:2222o la IP de tu servidor). - Los datos de acceso a tu hosting (usuario y contraseña de DirectAdmin).
- Acceso al administrador de tu PrestaShop (por ejemplo,
https://tudominio.com/admin). - Un dominio apuntando correctamente a tu servidor (los registros DNS deben estar configurados).
Si tu dominio no apunta aún, primero deberás gestionar los DNS desde tu proveedor de dominio o desde el propio DirectAdmin.
Paso 1: Obtener e instalar el certificado SSL en DirectAdmin
DirectAdmin facilita la instalación de certificados SSL de forma automática o manual. La opción más recomendada para principiantes es usar Let’s Encrypt, ya que es gratuita, automática y se renueva sola.
Usar Let’s Encrypt (recomendado)
- Inicia sesión en tu panel de DirectAdmin.
- Busca la sección "SSL Certificates" o "Certificados SSL". En la mayoría de las versiones, está dentro del menú "Advanced Features".
- Dentro de SSL Certificates, verás una pestaña o botón que dice "Let’s Encrypt".
- Haz clic en "Create/Request" o "Solicitar certificado".
- Aparecerá una lista con tus dominios. Selecciona el dominio principal de tu PrestaShop (por ejemplo,
tudominio.com) y también marca "www.tudominio.com" si quieres que ambos funcionen con HTTPS. - Marca la opción "Wildcard" si necesitas cubrir todos los subdominios (no es obligatorio para PrestaShop básico).
- Haz clic en "Save" o "Request". DirectAdmin se comunicará con Let’s Encrypt y en unos segundos (o minutos) el certificado estará instalado.
[TIP] Si tienes problemas con Let’s Encrypt, asegúrate de que tu dominio tenga un registro A correcto apuntando a la IP de tu servidor. El proceso falla si el dominio no se resuelve correctamente.
Instalar un certificado SSL de pago (manual)
Si ya tienes un certificado SSL comprado (por ejemplo, de Sectigo, Comodo o GlobalSign), puedes instalarlo manualmente:
- En DirectAdmin, ve a "SSL Certificates" > "Paste a pre-generated certificate and key".
- Necesitarás tres datos que te proporcionó tu proveedor de SSL:
- Certificate (CRT): El certificado en sí.
- Private Key (KEY): La clave privada.
- CA Bundle (CABUNDLE): El paquete de certificados intermedios (a veces viene junto al CRT).
- Pega cada uno en su campo correspondiente.
- Haz clic en "Install". DirectAdmin lo aplicará automáticamente a tu dominio.
[WARNING] Guarda siempre una copia de seguridad de tu clave privada. Si la pierdes, no podrás renovar el certificado sin generar uno nuevo.
Paso 2: Forzar HTTPS en DirectAdmin
Una vez instalado el SSL, debes configurar tu servidor para que redirija todo el tráfico HTTP a HTTPS. Esto se hace desde el panel de DirectAdmin.
- En DirectAdmin, ve a "Domain Setup" o "Configuración de dominio".
- Localiza tu dominio y haz clic en el icono de "Editar" o el nombre del dominio.
- Busca la opción "SSL" o "Secure Socket Layer". Actívala si no lo está.
- También encontrarás una opción llamada "Force SSL" o "Forzar SSL". Márcala como "Yes" o "On".
- Guarda los cambios.
Con esto, cada vez que alguien visite http://tudominio.com, será redirigido automáticamente a https://tudominio.com.
[INFO] Si tu PrestaShop ya estaba funcionando antes de instalar SSL, es posible que tengas que limpiar la caché del navegador o usar un modo incógnito para ver los cambios.
Paso 3: Configurar SSL en PrestaShop
Ahora toca decirle a PrestaShop que use HTTPS de forma nativa. Esto es crucial para que las URLs de tus productos, imágenes y scripts se carguen de forma segura.
- Accede al panel de administración de tu PrestaShop.
- Ve al menú "Shop Parameters" > "General" (o "Parámetros de la tienda" > "General").
- Busca la sección "Enable SSL" (o "Habilitar SSL"). Actívala.
- Justo debajo, verás "Enable SSL on all pages" (o "Habilitar SSL en todas las páginas"). Actívala también.
- Haz clic en "Save" (o "Guardar"). PrestaShop te pedirá que confirmes porque la sesión se reiniciará. Acepta.
Después de guardar, la tienda se recargará automáticamente con HTTPS. Si ves algún error de contenido mixto (mixed content), no te preocupes, lo solucionaremos en el siguiente paso.
[WARNING] Si tu PrestaShop se queda en blanco o da error después de activar SSL, accede de nuevo por HTTP (sin s) y desactiva temporalmente la opción "Enable SSL on all pages". Luego revisa que el certificado esté bien instalado.
Paso 4: Verificar contenido mixto y corregir URLs
El contenido mixto ocurre cuando tu página carga recursos (imágenes, CSS, JavaScript) a través de HTTP en lugar de HTTPS. Los navegadores modernos bloquean estos recursos, lo que puede romper tu tienda.
Cómo detectarlo
- Abre tu tienda en cualquier navegador (Chrome, Firefox, Edge).
- Haz clic derecho en la página y selecciona "Inspeccionar" o "Inspeccionar elemento".
- Ve a la pestaña "Console" (Consola). Si ves errores como "Mixed Content: The page at '...' was loaded over HTTPS, but requested an insecure image '...'", tienes contenido mixto.
Cómo solucionarlo
PrestaShop suele actualizar las URLs automáticamente si configuras bien el dominio. Pero a veces quedan datos antiguos en la base de datos.
Opción 1: Usar el módulo "PS Cleaner" o "PrestaShop Cleaner"
- Este módulo escanea y reemplaza todas las URLs HTTP por HTTPS en la base de datos. Es la forma más segura y rápida.
Opción 2: Reemplazo manual en la base de datos (solo para avanzados)
- Accede a phpMyAdmin desde DirectAdmin (suele estar en "MySQL Management").
- Selecciona la base de datos de tu PrestaShop.
- Ejecuta esta consulta SQL (cambia
tudominio.compor tu dominio real):UPDATE ps_configuration SET value = REPLACE(value, 'http://tudominio.com', 'https://tudominio.com'); UPDATE ps_shop_url SET domain = REPLACE(domain, 'http://', ''), domain_ssl = REPLACE(domain_ssl, 'http://', ''); - Importante: Haz una copia de seguridad de la base de datos antes de ejecutar cualquier consulta.
Opción 3: Usar el módulo "SEO" de PrestaShop
- En el administrador, ve a "Shop Parameters" > "Traffic & SEO".
- En la sección "Shop URL", asegúrate de que tanto "Domain" como "SSL Domain" tengan tu dominio sin
http://(solotudominio.com). - Guarda los cambios.
[TIP] Después de corregir las URLs, limpia la caché de PrestaShop desde "Advanced Parameters" > "Performance" > "Clear cache".
Paso 5: Probar el SSL y verificar el SEO
Una vez todo configurado, es hora de asegurarte de que funciona correctamente.
Pruebas básicas
- Prueba de navegación: Navega por tu tienda como un cliente: producto, carrito, proceso de pago. Todo debe cargar con HTTPS y el candado verde debe aparecer en la barra de direcciones.
- Prueba de redirección: Escribe
http://tudominio.comen el navegador y comprueba que te redirige automáticamente ahttps://tudominio.com. - Herramientas externas:
- SSL Labs: Ve a https://www.ssllabs.com/ssltest/ e ingresa tu dominio. Te dará una calificación (A o A+ es ideal).
- Why No Padlock: https://www.whynopadlock.com/ – Te muestra exactamente qué recursos están causando contenido mixto si el candado no aparece.
Verificar el SEO
Google valora mucho el HTTPS. Para asegurarte de que tu SEO no se vea afectado:
- Indexación: Ve a Google Search Console y añade tu dominio con HTTPS (tanto con www como sin www).
- Sitemap: Regenera tu sitemap en PrestaShop desde "SEO & URLs" y notifica a Google.
- Redirecciones 301: Si tenías enlaces antiguos con HTTP, PrestaShop las gestiona automáticamente gracias a la opción "Force SSL". No obstante, revisa que no haya enlaces rotos.
Preguntas frecuentes (FAQ)
¿Por qué mi PrestaShop no carga después de activar SSL?
Puede ser por un certificado mal instalado o por contenido mixto. Primero, desactiva la opción "Enable SSL on all pages" desde el panel de administración (accediendo por HTTP). Luego, verifica que el certificado esté bien en DirectAdmin y que el dominio apunte correctamente.
¿Necesito un certificado SSL para cada subdominio?
No necesariamente. Si usas un certificado Wildcard (por ejemplo, *.tudominio.com), cubrirá todos los subdominios como blog.tudominio.com o tienda.tudominio.com. Let’s Encrypt también ofrece wildcard, pero requiere configuración adicional con DNS.
¿Cuánto tarda en renovarse Let’s Encrypt?
Let’s Encrypt se renueva automáticamente cada 90 días. DirectAdmin suele gestionar la renovación de forma automática. Si ves que el certificado caduca, revisa que el proceso cron esté activo en el servidor.
¿Afecta SSL al rendimiento de mi PrestaShop?
Mínimamente. El cifrado y descifrado de datos requiere un poco más de recursos del servidor, pero los servidores modernos lo manejan sin problema. Además, el SEO y la confianza del usuario compensan con creces esa pequeña carga.
¿Puedo usar SSL con un hosting compartido?
Sí, la mayoría de los hostings compartidos con DirectAdmin permiten instalar SSL de Let’s Encrypt sin costo adicional. Verifica con tu proveedor que el plan lo incluya.
Conclusión
Configurar SSL en DirectAdmin para tu PrestaShop no es complicado si sigues los pasos correctos. Desde la instalación del certificado hasta la verificación del contenido mixto, cada etapa es crucial para garantizar una tienda segura, profesional y bien posicionada en buscadores.
Recuerda que un sitio con HTTPS no solo protege a tus clientes, sino que también mejora tu reputación y tu ranking en Google. Si encuentras algún problema, revisa los puntos anteriores o consulta con el soporte técnico de tu hosting.
[INFO] Si tu hosting utiliza Syspanel (antes conocido como HestiaCP), el proceso es similar pero accedes por el puerto 2106. En Syspanel, busca la sección "SSL" dentro de "Web" y sigue las mismas indicaciones: usa Let’s Encrypt o pega tu certificado manualmente. La configuración en PrestaShop es idéntica.
¡Ahora ya tienes todo lo necesario para que tu PrestaShop vuele con HTTPS!
