Guía para configurar SSL/HTTPS en PrestaShop con DirectAdmin
Introducción: ¿Por qué es tan importante el SSL/HTTPS en tu tienda PrestaShop?
Si tienes una tienda online con PrestaShop, seguramente habrás oído hablar del SSL y del HTTPS, pero puede que no tengas claro qué son exactamente o por qué son tan importantes. Vamos a explicarlo de forma sencilla: el SSL (Secure Sockets Layer) es un protocolo de seguridad que cifra la información que viaja entre el navegador de tus clientes y tu servidor. Cuando lo tienes activo, la URL de tu tienda cambia de http:// a https:// y aparece un candadito en la barra del navegador.
Este candadito no es un adorno. Significa que datos sensibles como contraseñas, números de tarjeta o direcciones personales están protegidos contra posibles interceptaciones. Para cualquier tienda online, esto es absolutamente imprescindible. Los clientes desconfían de las páginas sin candado, y los buscadores como Google penalizan en sus resultados a las webs que no usan HTTPS. Además, sistemas de pago como PayPal o Stripe pueden rechazar trabajar con tiendas que no tengan SSL bien configurado.
En esta guía práctica, te voy a enseñar paso a paso cómo configurar SSL/HTTPS en PrestaShop cuando tu hosting utiliza el panel de control DirectAdmin. No necesitas ser un experto en informática; solo sigue las instrucciones con calma y tendrás tu tienda segura en menos de lo que imaginas.
Requisitos previos antes de empezar
Antes de lanzarnos a configurar nada, asegurémonos de que tienes todo lo necesario. No queremos que te quedes a medias por no tener algo preparado.
Para configurar SSL PrestaShop DirectAdmin, necesitarás:
- Acceso al panel de control DirectAdmin de tu hosting. Normalmente se accede mediante una URL como
https://tu-dominio:2222ohttps://tu-ip:2222, aunque tu proveedor puede usar otro puerto. Ten a mano tu usuario y contraseña de administrador. - Acceso al panel de administración de PrestaShop (la parte de
tu-tienda.com/admin). - Un dominio apuntando correctamente a tu servidor mediante registros DNS. Si el dominio no apunta, el SSL no se podrá emitir correctamente.
- Acceso al administrador de archivos de DirectAdmin o a un cliente FTP como FileZilla, por si necesitamos editar algún archivo de configuración.
[INFO] Si tu hosting usa el panel alternativo Syspanel (antes conocido como HestiaCP), el proceso es bastante similar, pero el acceso se realiza a través del puerto 2106. No obstante, esta guía se centra en DirectAdmin, que es el panel que nos has indicado.
Paso 1: Emitir e instalar el certificado SSL en DirectAdmin
Lo primero es conseguir el certificado SSL. Hoy en día, la mayoría de los hosts ofrecen Let's Encrypt, que es una autoridad certificadora gratuita, automática y muy fiable. DirectAdmin tiene una integración muy sencilla con Let's Encrypt, así que no tendrás que pagar nada por el certificado.
1.1 Accede a la sección de SSL en DirectAdmin
Inicia sesión en DirectAdmin y busca la sección que suele llamarse "SSL Certificates" o "Certificados SSL". En la interfaz moderna de DirectAdmin, normalmente la encuentras en el menú lateral o en la sección de "Account Management". Si no la ves, puedes usar el buscador interno del panel.
1.2 Selecciona tu dominio y emite el certificado
Dentro de la sección SSL, verás una lista con tus dominios. Selecciona el dominio principal de tu tienda PrestaShop (por ejemplo, www.mitienda.com o mitienda.com). Busca el botón que dice "Let's Encrypt" o "Create" junto a la opción de certificado gratuito.
DirectAdmin te pedirá que marques algunas casillas. Te recomiendo marcar todas las opciones, especialmente:
- "Include www" (incluir el subdominio www). Esto te permitirá tener el certificado tanto para
mitienda.comcomo parawww.mitienda.com. - "Include mail" (si quieres también asegurar tu correo, aunque no es imprescindible para PrestaShop).
- "Wildcard" (comodín). Si tu tienda usa subdominios, esto te vendrá bien, pero para la mayoría de tiendas no es necesario.
Haz clic en "Issue" o "Create" y espera unos segundos. DirectAdmin se comunicará con Let's Encrypt y emitirá el certificado automáticamente. Si todo ha ido bien, verás un mensaje de éxito y el certificado aparecerá en la lista.
[TIP] Asegúrate de que tu dominio apunta a la IP del servidor antes de emitir el certificado. Si el dominio no resuelve correctamente, Let's Encrypt no podrá validar que eres el dueño y el proceso fallará.
1.3 Verifica que el certificado está activo
Una vez emitido, DirectAdmin debería instalarlo automáticamente en tu dominio. Para comprobarlo, puedes abrir una ventana de incógnito en tu navegador y visitar https://tu-dominio. Si aparece el candadito y no hay errores, el SSL está funcionando a nivel de servidor. Aún nos queda configurar PrestaShop, así que no te emociones demasiado todavía.
Paso 2: Configurar PrestaShop para usar HTTPS
Ahora que el certificado está instalado en el servidor, toca decirle a PrestaShop que debe usar HTTPS. Esto se hace en dos partes: primero en el panel de administración y luego, si es necesario, forzando los enlaces en la base de datos o en archivos de configuración.
2.1 Activa SSL en el panel de administración de PrestaShop
Entra en tu panel de administración de PrestaShop (la URL que acaba en /admin). Una vez dentro, sigue esta ruta:
- Ve al menú "Parámetros avanzados" (o "Advanced Parameters").
- Haz clic en "Rendimiento" (o "Performance").
- Busca la sección "Seguridad" o "Security".
En esa sección encontrarás una opción que dice algo como "Activar SSL" o "Enable SSL". Márcala como Sí. Justo debajo, verás otra opción que dice "Activar SSL en todas las páginas" o "Enable SSL on all pages". Esta es muy importante, actívala también. De esta forma, todo el tráfico de tu tienda se redirigirá automáticamente a HTTPS, no solo la parte del carrito de compra.
[WARNING] Activar SSL en todas las páginas es crucial. Si solo lo activas en las de pago, los clientes podrían navegar en HTTP en el resto de la tienda, lo cual es inseguro y además Google lo penaliza. Actívalo siempre en todas.
Guarda los cambios. PrestaShop te pedirá que confirmes y es posible que la sesión se reinicie. No te asustes, es normal.
2.2 Ajusta la URL de la tienda en PrestaShop
Este paso se suele pasar por alto, pero es vital. PrestaShop guarda la URL de tu tienda en su configuración. Si estaba configurada con http://, hay que cambiarla a https://.
Para ello:
- Ve a "Parámetros de la tienda" (o "Shop Parameters").
- Entra en "General".
- Busca la sección "URL de la tienda" o "Shop URL".
Verás campos como "Dominio de la tienda" y "URL base". Asegúrate de que el dominio aparece sin http:// (por ejemplo, mitienda.com). En el campo de URL base, debe aparecer https://mitienda.com/ (con la s). Si ves http://, cámbialo manualmente.
Guarda los cambios. PrestaShop actualizará sus enlaces internos.
2.3 Fuerza la redirección de HTTP a HTTPS (opcional pero recomendado)
Aunque PrestaShop tiene su propia redirección, es muy buena práctica forzar la redirección desde el servidor. Esto evita problemas con cachés o con enlaces antiguos que apunten a HTTP.
Para hacerlo en DirectAdmin, lo más sencillo es editar el archivo .htaccess de tu tienda. Este archivo se encuentra en la raíz de tu instalación de PrestaShop.
- Ve al Administrador de archivos de DirectAdmin o conéctate por FTP.
- Busca el archivo
.htaccessen la carpeta pública de tu dominio (normalmentepublic_htmlodomains/tudominio/public_html). - Descárgalo o edítalo directamente. Añade al principio del archivo las siguientes líneas:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Guarda el archivo y súbelo si lo habías descargado. Con esto, cualquier visita que intente acceder a http:// será redirigida automáticamente a https:// con un código 301 (redirección permanente).
[WARNING] Ten cuidado al editar el
.htaccess. Si lo rompes, tu tienda podría dejar de cargar. Antes de editarlo, haz una copia de seguridad del archivo original. Si algo falla, puedes restaurarlo desde el panel de archivos.
Paso 3: Verifica que todo funciona correctamente
Una vez hecho todo lo anterior, es hora de comprobar que la configuración es correcta. No queremos que tus clientes se encuentren con errores.
3.1 Prueba el candadito en tu navegador
Abre tu tienda en una ventana de incógnito (para evitar caché) y visita https://tu-dominio. Deberías ver el candadito cerrado en la barra de direcciones. Haz clic en él para ver los detalles del certificado. Debe indicar que la conexión es segura y que el certificado está emitido por Let's Encrypt.
3.2 Revisa el "Contenido Mixto" (Mixed Content)
Un problema muy común es el contenido mixto. Esto ocurre cuando la página se sirve por HTTPS pero algunos recursos (imágenes, scripts, CSS) se cargan desde URL que empiezan por http://. El navegador bloquea estos recursos y la página se ve mal o no funciona correctamente.
Para comprobarlo:
- Abre la consola de desarrollador de tu navegador (F12).
- Ve a la pestaña "Consola" o "Console".
- Carga tu tienda y busca errores que digan "Mixed Content" o "Blocked loading mixed active content".
Si encuentras errores de este tipo, la solución más rápida es ir a PrestaShop y regenerar la caché. Ve a "Parámetros avanzados" > "Rendimiento" y haz clic en "Vaciar la caché". A veces eso es suficiente.
Si persisten, puede que tengas URLs antiguas guardadas en la base de datos. En ese caso, necesitarás ejecutar una consulta SQL para reemplazar http:// por https:// en las tablas de PrestaShop. Si no te sientes cómodo con esto, contacta con tu soporte de hosting.
[TIP] Existen módulos gratuitos en el marketplace de PrestaShop que detectan y corrigen automáticamente el contenido mixto. Si no quieres complicarte, puedes instalar uno. Busca "Mixed Content Fixer" o similar.
3.3 Actualiza Google Search Console y sitemaps
Si ya tenías tu tienda indexada en Google, es importante que le avises del cambio a HTTPS. Entra en Google Search Console, añade la propiedad con https:// y envía el nuevo sitemap. Esto acelerará el proceso de indexación de las nuevas URLs.
Además, en PrestaShop, regenera el sitemap. Ve a "Módulos" > "Módulos y servicios", busca "sitemap" y regenera el archivo. La mayoría de los módulos de sitemap te permiten hacerlo con un clic.
Preguntas frecuentes (FAQ) sobre SSL PrestaShop DirectAdmin
Aquí tienes algunas dudas comunes que suelen tener los usuarios al configurar HTTPS en PrestaShop.
¿Qué hago si DirectAdmin no me deja emitir el certificado Let's Encrypt?
Revisa que tu dominio apunta a la IP correcta del servidor. Puedes comprobarlo con herramientas online de "DNS lookup". Si el dominio apunta a un servicio como Cloudflare, asegúrate de que el proxy está desactivado (naranja a gris) durante la emisión del certificado. Una vez emitido, puedes volver a activarlo.
¿El SSL afecta al rendimiento de mi tienda?
El cifrado SSL añade una pequeña carga extra al servidor, pero en la práctica es insignificante en la mayoría de los casos. Además, HTTP/2 (que requiere HTTPS) hace que las páginas carguen más rápido. El balance es positivo: ganas en seguridad y rendimiento.
¿Necesito un certificado SSL para cada subdominio?
Si tienes subdominios como blog.mitienda.com o tienda.mitienda.com, necesitarás certificados separados o un certificado comodín. En DirectAdmin, al emitir el certificado, puedes marcar la opción "Wildcard" para que cubra todos los subdominios. Ten en cuenta que algunos proveedores limitan los certificados comodín.
Mi tienda carga en HTTPS pero el candado aparece en rojo o con un error. ¿Qué significa?
Eso indica que hay contenido mixto o que el certificado no es válido para ese dominio. Revisa la consola del navegador para ver el error específico. Si el error dice "certificate invalid", comprueba que el certificado cubre el dominio con y sin www. Si dice "mixed content", aplica los pasos que te he explicado antes.
¿Debo cambiar todas mis URLs manualmente en la base de datos?
No es necesario si has seguido los pasos de PrestaShop y has vaciado la caché. PrestaShop es bastante bueno actualizando las URLs. Solo si ves problemas persistentes de contenido mixto o enlaces rotos, considera la consulta SQL. Si no tienes experiencia con bases de datos, pide ayuda a tu proveedor de hosting para evitar errores catastróficos.
¿Qué pasa con los enlaces externos que apuntan a mi tienda con http://?
Gracias a la redirección 301 que configuramos en el .htaccess, cualquier enlace externo antiguo que apunte a http:// será redirigido automáticamente a https://. Esto es perfecto para el SEO, ya que los buscadores entienden que la página se ha movido de forma permanente y transfieren la autoridad.
Conclusión y siguientes pasos
Configurar SSL PrestaShop DirectAdmin es un proceso que, una vez que lo has hecho la primera vez, te llevará menos de diez minutos. Los beneficios son enormes: mayor confianza de tus clientes, mejor posicionamiento en Google y cumplimiento de los estándares de seguridad PCI-DSS que exigen las pasarelas de pago.
Has aprendido a:
- Emitir un certificado SSL gratuito con Let's Encrypt desde DirectAdmin.
- Activar HTTPS en el panel de administración de PrestaShop.
- Configurar la URL canónica de tu tienda.
- Forzar la redirección desde HTTP a HTTPS mediante .htaccess.
- Verificar y solucionar problemas de contenido mixto.
Ahora que tu tienda es 100% HTTPS, te recomiendo que revises otros aspectos de la seguridad PrestaShop, como mantener el núcleo y los módulos actualizados, usar contraseñas robustas y hacer copias de seguridad periódicas. La seguridad es un proceso continuo, no un evento único.
Si te has quedado con alguna duda, no dudes en contactar con tu proveedor de hosting. Ellos conocen bien su infraestructura y podrán ayudarte con cualquier particularidad de su configuración de DirectAdmin.
¡Tu tienda ya es más segura y profesional! Ahora puedes centrarte en lo que de verdad importa: vender y hacer crecer tu negocio online.
