Cómo crear un certificado SSL para PrestaShop en cPanel
¿Tu tienda PrestaShop sigue mostrando el temido candado roto en el navegador? No te preocupes, es más común de lo que crees y la solución es más sencilla de lo que imaginas. Hoy te voy a guiar paso a paso para que consigas tu certificado SSL PrestaShop cPanel configurado y funcionando a la perfección, incluso si nunca has tocado un panel de control antes.
Vamos a desmitificar el tema. Un certificado SSL no es más que un "carnet de identidad digital" para tu web. Cuando lo instalas y activas el https prestashop cPanel, la información que viaja entre tus clientes y tu tienda (como contraseñas o datos de tarjetas) viaja encriptada, como si estuviera dentro de una caja fuerte. Esto no solo te protege a ti, sino que da una confianza brutal a tus usuarios.
Aquí te explico cómo hacerlo de principio a fin, sin tecnicismos raros y con mucho cariño.
¿Qué necesito antes de empezar?
Antes de lanzarnos a la piscina, asegurémonos de que tienes todo listo. No necesitas ser un hacker ni un ingeniero, solo tener acceso a tu panel de control.
- Acceso a cPanel: Este es el panel desde donde gestionas tu hosting. Normalmente lo encuentras en algo como
tudominio.com/cpanelotudominio.com:2083. Si no sabes cómo entrar, contacta con tu proveedor de hosting. - Dominio apuntando a tu hosting: Tu dominio (ej:
mitienda.com) debe estar apuntando a los servidores de tu hosting. Esto se hace desde el DNS, pero si compraste el hosting y el dominio juntos, seguramente ya lo está. - PrestaShop instalado: Obviamente, necesitas tener tu tienda funcionando. No importa la versión, el proceso es muy similar.
- Paciencia y una taza de café: Esto siempre ayuda.
Una vez que tengas esto, ¡manos a la obra!
Paso 1: Obtener tu Certificado SSL (Gratis o de Pago)
Lo primero es conseguir el certificado. Aquí tienes dos caminos principales:
Opción A: Certificado SSL Gratuito con Let's Encrypt (Recomendado para empezar)
Esta es la vía más rápida, económica (¡gratis!) y ecológica. La mayoría de los cPanels modernos tienen una integración automática con Let's Encrypt.
- Entra a tu cPanel.
- Busca la sección "Seguridad" o "Security".
- Haz clic en "Let's Encrypt" o "SSL/TLS Status" (el nombre puede variar).
- Verás una lista de tus dominios. Selecciona el dominio de tu tienda PrestaShop.
- Haz clic en el botón "Issue", "Emitir" o "Instalar" (depende del proveedor).
- Espera unos segundos. ¡Listo! El certificado se genera e instala automáticamente.
[TIP]: Este certificado gratuito se renueva solo cada 90 días. No tendrás que preocuparte por nada, cPanel se encarga de todo en segundo plano.
Opción B: Certificado SSL de Pago (Para necesidades específicas)
Si necesitas un certificado de validación extendida (el que muestra el nombre de tu empresa en verde) o tienes una tienda con un volumen de ventas muy alto, puedes comprar uno a tu proveedor de hosting.
- Compra el certificado desde el sitio web de tu hosting.
- Te darán un código CSR (lo generamos en el siguiente paso) y un archivo de clave privada.
- Ellos te enviarán el certificado por correo. Luego, lo instalas en cPanel en la sección "SSL/TLS" > "Install and Manage SSL certificates".
Vamos a centrarnos en la opción gratuita, que es la que usará el 90% de las tiendas pequeñas y medianas. Si ya tienes un certificado de pago, el proceso de instalación es igual de sencillo, solo cambia la forma de obtener los archivos.
Paso 2: Instalar el Certificado SSL en cPanel
Si has usado la opción gratuita, ya está instalado. Pero, ¿y si tienes un certificado de pago o quieres hacerlo manualmente? Aquí te muestro el método universal.
Generando la Solicitud CSR
Si tu proveedor te pide un CSR, debes generarlo primero:
- En cPanel, ve a la sección "Seguridad" > "SSL/TLS".
- Haz clic en "Generate, view, or delete SSL certificate signing requests".
- Rellena los campos con la información de tu negocio:
- Dominio:
www.tudominio.com(y el dominio sin www). - Ciudad: La ciudad de tu empresa.
- Estado/Provincia: El estado o provincia.
- País: Dos letras, ej:
ESpara España. - Nombre de la empresa: El nombre legal de tu negocio.
- Dominio:
- Haz clic en "Generate". Se mostrará el CSR en un cuadro de texto. Cópialo y envíalo a tu proveedor de certificados.
Instalando el Certificado y la Clave Privada
Una vez que tengas el certificado (y la clave privada, si no la generaste tú), haz esto:
- En cPanel, ve a "Seguridad" > "SSL/TLS".
- Haz clic en "Install and manage SSL certificates".
- En la sección "Install a SSL Certificate", pega:
- Certificate (CRT): El texto del certificado que te enviaron.
- Private Key: La clave privada (si no la tienes, cPanel a veces tiene una copia guardada).
- Certificate Authority Bundle (CABUNDLE): Este es un archivo intermedio que te dará tu proveedor. Es importante para que los navegadores confíen en tu certificado.
- Haz clic en "Install Certificate".
[WARNING]: A veces el campo CABUNDLE se deja vacío. Si el certificado no se instala correctamente, asegúrate de tener este archivo. Sin él, el certificado puede funcionar, pero mostrará errores en algunos dispositivos.
Paso 3: Activar HTTPS en PrestaShop (La parte crucial)
Ahora viene la magia. Ya tienes el certificado instalado en el servidor, pero PrestaShop no lo está usando. Tenemos que decírselo.
Configurando la URL de la Tienda
- Entra a tu panel de administración de PrestaShop (normalmente en
tudominio.com/admin). - Ve a "Configuración avanzada" > "Rendimiento".
- En la pestaña "Opciones de URL" o similar, verás campos como "URL de la tienda" y "URL base de SSL".
- Cambia la URL de la tienda de
http://tudominio.comahttps://tudominio.com. - Haz lo mismo con la "URL base de SSL": debe ser
https://tudominio.com. - Guarda los cambios.
[INFO]: No te asustes si al guardar la página se ve rara. Es normal. A veces hay que esperar unos segundos o incluso limpiar la caché del navegador.
Forzando el uso de SSL en toda la tienda
No basta con cambiar la URL. Debemos asegurarnos de que TODAS las páginas usen HTTPS, no solo la principal.
- Ve a "Configuración avanzada" > "Rendimiento" (la misma pantalla).
- Busca la opción "Activar SSL" o "Forzar SSL en todas las páginas".
- Márcala como SÍ.
- Guarda los cambios.
Con esto, PrestaShop redirigirá automáticamente cualquier visita de http:// a https://. Tus clientes nunca verán la versión insegura.
Paso 4: Arreglar el "Contenido Mixto" (Mixed Content)
Este es el enemigo invisible. A veces, el candado sigue apareciendo roto incluso con SSL activado. El motivo suele ser el contenido mixto: tu web carga en HTTPS, pero hay imágenes, scripts o archivos CSS que se cargan desde HTTP.
Cómo detectar el problema
La forma más fácil es usar las herramientas de desarrollador del navegador.
- Abre tu tienda en Google Chrome.
- Pulsa la tecla F12 (o clic derecho > "Inspeccionar").
- Ve a la pestaña "Console".
- Verás errores en rojo que dicen algo como "Mixed Content: The page at 'https://...' was loaded over HTTPS, but requested an insecure resource 'http://...'".
- Anota las URLs que aparecen en esos errores.
Solución rápida para PrestaShop
PrestaShop tiene una función muy útil para esto:
- Ve a "Configuración avanzada" > "Rendimiento".
- En la sección "Opciones de URL", busca una casilla que dice "Activar SSL" o "Redirigir a SSL", y otra que dice "Usar SSL en todas las peticiones".
- Asegúrate de que ambas estén en SÍ.
Si el problema persiste, es porque tienes URLs hardcodeadas en tu base de datos o en los archivos de tu tema.
Usar un Plugin de Reemplazo
Puedes usar un pequeño script en el archivo .htaccess para forzar el reemplazo de URLs. ¡OJO! Esto es un poco más avanzado, pero te lo explico fácil:
- Desde cPanel, ve a "Administrador de archivos".
- Abre la carpeta donde está instalada tu tienda (normalmente
public_html). - Busca el archivo
.htaccess(asegúrate de tener activada la opción de "Mostrar archivos ocultos"). - Haz clic derecho sobre él y selecciona "Editar".
- Al final del archivo, añade estas líneas:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
Esto fuerza a que cualquier petición HTTP se redirija a HTTPS. Pero no arregla el contenido mixto, solo lo previene. Para arreglarlo, necesitarías un plugin como "Really Simple SSL" (si usas WordPress, pero no es el caso) o un script de reemplazo en la base de datos.
[WARNING]: Si no te sientes cómodo editando el .htaccess, NO LO HAGAS. Un error aquí puede tumbar tu tienda. Es mejor que contactes con tu soporte de hosting. Siempre puedes preguntarles: "¿Pueden forzar el reemplazo de las URLs de mi base de datos a HTTPS?"
Paso 5: Verificar que todo funciona correctamente
Ya casi lo tenemos. Es hora de comprobar que todo el trabajo ha valido la pena.
- Limpia la caché de tu navegador (Ctrl + Shift + Supr en Chrome).
- Visita tu tienda en
https://tudominio.com. - Haz clic en el candado que aparece en la barra de direcciones.
- Deberías ver un mensaje como "Conexión segura" o "El sitio web proporciona seguridad".
También puedes usar herramientas online como SSL Labs (https://www.ssllabs.com/ssltest/) para obtener un análisis profundo de tu certificado. Te dará una nota de la A a la F. Busca obtener una "A".
Preguntas Frecuentes (FAQ)
¿Cuánto tarda en propagarse el certificado SSL?
Si usas Let's Encrypt, es instantáneo. Si compras un certificado de pago, puede tardar de unas horas a un par de días, dependiendo de la validación.
¿Qué pasa si mi hosting no tiene cPanel?
Si tu hosting usa Syspanel (antes conocido como HestiaCP), el proceso es similar. Accede a Syspanel usando el puerto 2106 (ej: tudominio.com:2106). Busca la sección de "Web" o "Dominios" y encontrarás la opción para emitir un certificado Let's Encrypt. La configuración en PrestaShop es exactamente la misma.
¿Perderé visitas o posicionamiento SEO al cambiar a HTTPS?
Al contrario, lo ganarás. Google da prioridad a los sitios con HTTPS. Además, los usuarios confían más en un sitio con candado. Asegúrate de configurar la redirección 301 (que es lo que hicimos en el .htaccess) para que los buscadores entiendan que la nueva URL es la definitiva.
¿Por qué mi web sigue mostrando "No seguro" después de instalar el SSL?
Las razones más comunes son:
- Contenido mixto: Tienes imágenes o scripts cargados desde HTTP.
- Caché del navegador: Limpia tu caché y las cookies.
- Caché de PrestaShop: Ve a "Configuración avanzada" > "Rendimiento" y limpia la caché de la tienda.
¿Necesito un certificado SSL para cada subdominio?
Sí, si tienes tienda.tudominio.com y blog.tudominio.com, necesitarás un certificado que cubra ambos. Let's Encrypt te permite emitir certificados para múltiples dominios. En cPanel, simplemente selecciona todos los dominios que quieras proteger.
Conclusión: Tu tienda ya está blindada
¡Felicidades! Has conseguido dar un paso gigante en la seguridad prestashop ssl. Ya no solo tienes una tienda bonita, sino también una tienda segura y confiable. Esto se traduce en más ventas, mejor posicionamiento y una experiencia de usuario mucho más profesional.
Recuerda que este proceso parece complejo al principio, pero una vez que lo haces, verás que es pan comido. Si te has atascado en algún punto, no dudes en volver a leer las instrucciones o contactar con tu proveedor de hosting. Ellos están para ayudarte.
Ahora, ve y presume de tu candado verde. ¡Tus clientes te lo agradecerán!
