🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Configuración de SSL en PrestaShop para DirectAdmin

Actualizado el 12 de septiembre de 2025

¡Excelente pregunta! Configurar un certificado SSL en tu tienda PrestaShop es uno de los pasos más importantes para la seguridad y el posicionamiento web. No te preocupes, aunque suene a algo muy técnico, te guiaré paso a paso para que lo hagas tú mismo en tu panel de DirectAdmin.

Vamos a dividir el proceso en dos grandes fases: primero, instalar el certificado en el servidor (DirectAdmin), y segundo, configurar PrestaShop para que funcione correctamente con HTTPS.


Fase 1: Instalar el Certificado SSL en DirectAdmin

Antes de que PrestaShop pueda usar HTTPS, tu servidor (DirectAdmin) debe tener un certificado SSL válido instalado para tu dominio. Aquí tienes dos caminos: usar un certificado gratuito de Let's Encrypt o instalar uno de pago.

### Opción A: Certificado Gratuito con Let’s Encrypt (Recomendado para empezar)

Esta es la opción más sencilla, gratuita y automática. DirectAdmin tiene una integración nativa con Let's Encrypt.

  1. Accede a tu panel de DirectAdmin. Normalmente es algo como https://tudominio.com:2222 o la IP de tu servidor seguida de :2222.
  2. Busca la sección "SSL Certificates". Dentro del menú principal, busca un icono o enlace que diga "SSL Certificates", "Certificados SSL" o similar.
  3. Selecciona "Let's Encrypt". Verás una opción clara para "Let's Encrypt" o "Free SSL".
  4. Configura el certificado. Se te pedirá que selecciones el dominio principal. Marca las casillas para incluir el "www" (ej: tudominio.com y www.tudominio.com). Asegúrate de que la opción "Wildcard" no esté seleccionada a menos que sepas lo que haces.
  5. Haz clic en "Solicitar" o "Guardar". El proceso tarda unos segundos. DirectAdmin se comunicará con Let's Encrypt, verificará tu dominio y generará el certificado automáticamente.
  6. ¡Listo! El certificado se instalará y renovará automáticamente cada 90 días.

[TIP] Si tu dominio está apuntando a otro servidor (como Cloudflare), es posible que Let's Encrypt falle. Temporalmente, apunta el dominio directamente a tu servidor de DirectAdmin para la instalación.

### Opción B: Certificado de Pago (SSL de Terceros)

Si ya tienes un certificado de pago (de Sectigo, DigiCert, etc.), el proceso es un poco más manual.

  1. Accede a la sección "SSL Certificates" en DirectAdmin.
  2. Selecciona "Paste a pre-generated certificate & key".
  3. Pega los datos. Necesitarás tres campos:
    • Certificate (CRT): El certificado en sí mismo.
    • Private Key (KEY): La clave privada que generaste al solicitar el certificado.
    • Certificate Authority Bundle (CABUNDLE): El paquete de certificados intermedios (a veces llamado CA Bundle).
  4. Haz clic en "Save". DirectAdmin instalará el certificado.

[WARNING] Si no tienes la clave privada (KEY), no podrás instalar el certificado. Guárdala siempre en un lugar seguro. Si la has perdido, deberás generar una nueva solicitud de certificado (CSR) desde DirectAdmin y pedir la reemisión a tu proveedor.

### Verificar la Instalación en DirectAdmin

Después de instalar, es buena idea verificar que todo está correcto.

  1. Vuelve a la sección "SSL Certificates".
  2. Busca tu dominio en la lista de "Certificates installed for domains".
  3. Haz clic en el candado o en "View". Deberías ver la información del certificado: fecha de caducidad, emisor (Let's Encrypt, Sectigo, etc.) y el dominio para el que es válido.
  4. Prueba en el navegador. Abre una ventana de incógnito y visita https://tudominio.com. Deberías ver el candado verde en la barra de direcciones.

Fase 2: Configurar PrestaShop para que funcione con HTTPS

Ahora que tu servidor ya tiene el SSL, toca decirle a tu tienda PrestaShop que lo use. Esto es crucial, ya que si no lo haces, la tienda seguirá cargando en HTTP, lo que puede provocar errores de "contenido mixto" (partes seguras y no seguras en la misma página).

### Paso 1: Activar SSL en el Back Office de PrestaShop

  1. Accede a tu panel de administración de PrestaShop. Normalmente en https://tudominio.com/adminXXXXX.
  2. Ve a "Parámetros de la tienda" > "Tráfico y SEO".
  3. En la pestaña "SEO y URLs", busca la sección "Configuración de la tienda".
  4. Verás dos opciones importantes:
    • "Activar SSL": Márcala como .
    • "Activar SSL en todas las páginas": Márcala como . Esto es fundamental para que toda la tienda (carrito, cuenta, pago) funcione bajo HTTPS.
  5. Guarda los cambios. PrestaShop te pedirá que confirmes. Hazlo.

[INFO] Si al activar SSL pierdes el acceso al Back Office, no entres en pánico. A veces la redirección no funciona bien. Simplemente escribe manualmente https://tudominio.com/adminXXXXX en la barra de direcciones. Si el problema persiste, contacta con tu soporte técnico.

### Paso 2: Forzar el uso de HTTPS desde el archivo .htaccess

A veces, PrestaShop no redirige automáticamente todo el tráfico HTTP a HTTPS. Para asegurarte de que nadie acceda a tu tienda por la versión insegura, podemos añadir una regla simple en el archivo .htaccess de la raíz de tu tienda.

  1. Accede al Administrador de Archivos de DirectAdmin. Busca la sección "File Manager" o "Administrador de Archivos".

  2. Navega a la carpeta donde está instalado PrestaShop. Normalmente es public_html o domains/tudominio.com/public_html.

  3. Busca el archivo .htaccess. Es un archivo oculto (empieza con un punto). Si no lo ves, en el Administrador de Archivos, activa la opción "Mostrar archivos ocultos".

  4. Edita el archivo. Haz clic derecho y selecciona "Edit" o "Code Editor".

  5. Añade el siguiente código AL PRINCIPIO del archivo, justo después de las líneas que comienzan con # o SetEnv:

    # Redirigir todo el tráfico HTTP a HTTPS
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    
  6. Guarda el archivo. Esto forzará que cualquier visita a http://tudominio.com sea redirigida automáticamente a https://tudominio.com.

[WARNING] Si tu tienda usa un CDN como Cloudflare, esta redirección debe hacerse desde el panel de Cloudflare (con la regla "Always Use HTTPS") y no desde el .htaccess para evitar bucles de redirección.

### Paso 3: Revisar y Actualizar URLs en la Base de Datos (Opcional pero muy recomendado)

Si tu tienda ya tenía contenido (productos, categorías, imágenes) antes de activar SSL, es posible que las URLs de las imágenes y enlaces internos sigan apuntando a http://. Esto causa el famoso error de "contenido mixto" (el candado se ve como un triángulo de advertencia).

PrestaShop tiene una herramienta interna para solucionarlo.

  1. En el Back Office, ve a "Parámetros avanzados" > "Base de datos".
  2. Busca la opción "Buscar y reemplazar".
  3. Configura la herramienta:
    • Tabla: Selecciona todas las tablas (o déjalo por defecto).
    • Buscar: http://tudominio.com
    • Reemplazar por: https://tudominio.com
    • Columna: Déjalo en blanco para que busque en todas las columnas.
  4. Haz clic en "Reemplazar ahora". La herramienta escaneará la base de datos y cambiará todas las URLs de HTTP a HTTPS.

[INFO] Esta acción es segura, pero siempre es buena práctica hacer una copia de seguridad de la base de datos antes de realizar cambios masivos. Puedes hacerlo desde la sección "Base de datos" en DirectAdmin (phpMyAdmin).

### Paso 4: Verificar la Tienda y Solucionar Errores

Una vez hecho todo, es hora de una revisión final.

  1. Limpia la caché de PrestaShop. Ve a "Parámetros avanzados" > "Rendimiento" y haz clic en "Limpiar caché" (tanto la de Smarty como la de Symfony).
  2. Prueba la tienda como cliente. Navega por productos, añade al carrito, inicia sesión. Fíjate en la barra de direcciones: debe mostrar el candado verde en TODAS las páginas.
  3. Usa herramientas online. Hay páginas como "SSL Checker" o "Why No Padlock" que analizan tu web en busca de errores de contenido mixto. Pega tu URL y te dirá si hay algún recurso (imagen, CSS, JS) que se cargue en HTTP.

[TIP] Si ves un error de "contenido mixto", la mayoría de las veces es porque algún módulo o tema de terceros tiene URLs hardcodeadas en HTTP. Deberás contactar al desarrollador del módulo o tema para que lo actualice.


Preguntas Frecuentes (FAQ)

¿Qué hago si después de activar SSL mi tienda se ve rara o no carga?

Esto es un error de "contenido mixto". Revisa el Paso 3 (buscar y reemplazar en la base de datos) y asegúrate de haber limpiado la caché de PrestaShop. Si el problema persiste, desactiva módulos uno por uno para encontrar el culpable.

¿Es necesario tener SSL para el SEO de mi tienda?

Sí, absolutamente. Google y otros motores de búsqueda penalizan los sitios sin HTTPS. Además, desde julio de 2018, Chrome marca como "No seguro" cualquier sitio web que no tenga SSL. Tener SSL es un factor de posicionamiento (SEO) básico e innegociable.

¿Cada cuánto se renueva el certificado de Let's Encrypt?

Cada 90 días. Pero no te preocupes, si has usado la opción de Let's Encrypt en DirectAdmin, la renovación es automática. DirectAdmin se encarga de renovarlo antes de que caduque. Solo debes asegurarte de que tu dominio siga apuntando al servidor.

¿Puedo tener SSL si uso Syspanel (HestiaCP)?

¡Sí, claro! El proceso es similar. En Syspanel (HestiaCP), accedes por el puerto 2106 (ej: https://tudominio.com:2106). Allí, en la sección de tu dominio, encontrarás una opción para "SSL" o "Let's Encrypt Support". El resto del proceso (configurar PrestaShop) es idéntico al explicado aquí.

¿Qué pasa si mi certificado SSL caduca?

Tu tienda dejará de funcionar correctamente. Los navegadores mostrarán un aviso de "Conexión no segura" o "Error de seguridad" y muchos usuarios abandonarán la compra. Por eso es tan importante usar Let's Encrypt (renovación automática) o configurar recordatorios para renovar tu certificado de pago.


Resumen Final

Configurar SSL en PrestaShop para DirectAdmin es un proceso de dos partes: servidor (DirectAdmin) y aplicación (PrestaShop).

  1. En DirectAdmin: Instala el certificado SSL (gratuito con Let's Encrypt o de pago).
  2. En PrestaShop: Activa SSL en el Back Office, fuerza la redirección en el .htaccess y actualiza las URLs en la base de datos.

Siguiendo estos pasos, tu tienda será segura, profesional y estará optimizada para el SEO. Si te surge cualquier duda, no dudes en consultar la documentación oficial de PrestaShop o contactar con tu proveedor de hosting. ¡Buena suerte con tu tienda online!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel