Cómo acelerar PrestaShop en cPanel con caché y CDN
¿Tu tienda PrestaShop carga lento? No te preocupes, es un problema muy común que tiene solución. En esta guía completa, te explicaré paso a paso cómo acelerar PrestaShop en cPanel usando dos herramientas clave: la caché y una CDN. Verás que con unos pocos ajustes tu tienda volará, mejorando la experiencia de usuario y tu posicionamiento en Google.
Vamos a empezar con lo básico. La velocidad de carga es crítica en el comercio electrónico. Un segundo de retraso puede significar una caída del 7% en las conversiones. Por eso, optimizar velocidad PrestaShop no es un lujo, es una necesidad. Y lo mejor es que no necesitas ser un experto técnico para lograrlo.
¿Por qué tu PrestaShop va lento?
Antes de lanzarnos a las soluciones, entendamos el problema. PrestaShop es un CMS potente, pero consume muchos recursos. Las causas más comunes de lentitud en un hosting compartido con cPanel son:
- Demasiados módulos activos: Cada módulo añade código y peticiones al servidor.
- Imágenes sin optimizar: Fotos de productos en alta resolución ralentizan la carga.
- Sin sistema de caché: El servidor genera la página desde cero en cada visita.
- Sin CDN: Los visitantes lejanos tardan más en recibir los archivos estáticos.
- Base de datos hinchada: Registros de pedidos antiguos, sesiones y logs acumulados.
Vamos a atacar cada uno de estos puntos.
Paso 1: Configurar la caché en PrestaShop desde cPanel
La caché es tu mejor amiga. Básicamente, guarda una versión "estática" de tus páginas para que el servidor no tenga que procesar PHP y consultar la base de datos cada vez que alguien entra.
1.1 Activar la caché interna de PrestaShop
Accede a tu panel de administración de PrestaShop (tu-dominio.com/adminXXXX). Sigue esta ruta:
Preferencias > Rendimiento
Aquí encontrarás varias opciones clave:
- Caché: Actívala. Recomiendo usar "Caché de archivos" si tu hosting es básico, o "Caché de Redis/Memcached" si tu plan lo soporta.
- Caché de plantillas (Smarty): Actívala y selecciona "Recompilar nunca". Esto evita que se regeneren las plantillas en cada carga.
- Caché de consultas SQL: Actívala. Guarda los resultados de las consultas a la base de datos.
- Combinar, comprimir y almacenar en caché archivos CSS y JavaScript: Activa las tres opciones. Esto reduce el número de peticiones HTTP.
[INFO] Si activas "Caché de archivos", asegúrate de que la carpeta
/cachetenga permisos de escritura (755). En cPanel puedes cambiarlo desde el Administrador de Archivos.
1.2 Usar un plugin de caché avanzado (opcional pero recomendado)
Además de la caché interna, instala un módulo como Page Cache Pro o Nginx Cache (si tu servidor lo soporta). Estos módulos crean páginas HTML estáticas que se sirven directamente, sin tocar PHP.
En cPanel, si tienes acceso a Apache + Nginx como proxy inverso, activa el caché de Nginx desde la sección "Software" o "Optimizar sitio web". Esto acelera enormemente la entrega de contenido.
Paso 2: Configurar una CDN para PrestaShop
Una CDN (Content Delivery Network) es una red de servidores repartidos por todo el mundo. Cuando alguien visita tu tienda, la CDN sirve los archivos estáticos (imágenes, CSS, JS) desde el servidor más cercano a su ubicación. Esto reduce la latencia drásticamente.
2.1 Elegir una CDN gratuita o de pago
- Cloudflare (gratuito): La opción más popular. Fácil de integrar y además ofrece protección contra DDoS.
- BunnyCDN (barato y rápido): Ideal si tu tráfico es medio-alto.
- KeyCDN o StackPath: Opciones premium.
Para esta guía usaremos Cloudflare porque es gratuita y se configura en minutos.
2.2 Integrar Cloudflare con PrestaShop
- Crea una cuenta en Cloudflare (cloudflare.com).
- Añade tu dominio (ejemplo: tudominio.com). Cloudflare escaneará tus registros DNS.
- Cambia los nameservers: Cloudflare te dará dos nameservers (ej: ns1.cloudflare.com, ns2.cloudflare.com). Ve a cPanel > "Domains" > "Zone Editor" o directamente al panel de tu registrador de dominios y cámbialos. El cambio tarda hasta 24 horas en propagarse.
- Activa el proxy naranja: En Cloudflare, asegúrate de que el registro de tu dominio tenga el icono de nube naranja. Esto activa la CDN y la protección.
- Configura SSL: En Cloudflare, ve a "SSL/TLS" y selecciona "Flexible" (si no tienes SSL propio) o "Full" (si ya tienes SSL en tu hosting). Esto cifra el tráfico.
2.3 Configurar PrestaShop para usar la CDN
Ahora debes decirle a PrestaShop que las imágenes y archivos estáticos se sirvan desde la CDN.
En tu panel de administración de PrestaShop, ve a:
Parámetros de la tienda > Tráfico y SEO > SEO y URL
Busca la opción "Servidor CDN" y escribe la URL de tu CDN. En Cloudflare, suele ser https://cdn.tudominio.com o simplemente https://tudominio.com (ya que Cloudflare actúa como proxy). Si no ves esta opción, instala un módulo como Cloudflare PrestaShop Module o BunnyCDN PrestaShop Module.
[TIP] Si usas Cloudflare, activa también "Optimización automática de imágenes" (Polish) y "Mirage" en el panel de Cloudflare. Comprimen imágenes y mejoran la carga en móviles.
Paso 3: Optimizar imágenes en PrestaShop
Las imágenes son el principal lastre de velocidad. Una foto de producto de 2MB puede tardar segundos en cargar.
3.1 Comprimir imágenes antes de subirlas
Usa herramientas como TinyPNG o Squoosh para reducir el peso sin perder calidad. Sube las imágenes en formato WebP si tu navegador lo soporta. PrestaShop permite convertir a WebP automáticamente con módulos como WebP Generator.
3.2 Activar la compresión en cPanel
En cPanel, busca la sección "Optimizar sitio web" (a veces dentro de "Software"). Activa la compresión Gzip para todos los archivos. Esto reduce el tamaño de las páginas hasta un 70%.
Paso 4: Limpiar y optimizar la base de datos
Con el tiempo, la base de datos de PrestaShop acumula basura: sesiones caducadas, carritos abandonados, logs de errores, etc.
4.1 Usar un módulo de limpieza
Instala módulos como Advanced Database Cleaner o PS Cleaner. Estos eliminan registros innecesarios de forma segura.
4.2 Optimizar tablas manualmente desde phpMyAdmin
- En cPanel, ve a phpMyAdmin.
- Selecciona la base de datos de tu tienda.
- Marca todas las tablas (clic en "Check All").
- En el menú desplegable, elige "Optimizar tabla". Esto reordena los índices y libera espacio.
[WARNING] Antes de tocar la base de datos, haz una copia de seguridad. En cPanel, usa "Backup" para descargar un archivo SQL.
Paso 5: Ajustes avanzados en cPanel
5.1 Activar PHP-FPM y OpCache
En cPanel, ve a "Seleccionar versión de PHP" (o "MultiPHP Manager"). Elige PHP 8.x (la más reciente estable). Luego, en "Configuración de PHP" (o "PHP Selector"), activa:
- opcache.enable: 1
- opcache.memory_consumption: 128 (o más si tu hosting lo permite)
- opcache.max_accelerated_files: 4000
- opcache.revalidate_freq: 60
Esto acelera la ejecución de PHP al guardar el código compilado en memoria.
5.2 Configurar el límite de memoria
En el mismo panel, aumenta memory_limit a 256M o 512M. PrestaShop necesita al menos 128M para funcionar fluidamente.
5.3 Usar un servidor web con Nginx
Si tu hosting lo permite, activa Nginx como proxy inverso (muchos planes de cPanel lo incluyen). Esto mejora la gestión de peticiones concurrentes.
Paso 6: Minimizar peticiones HTTP
Cada archivo (CSS, JS, imagen) genera una petición al servidor. Reducir su número acelera la carga.
6.1 Combinar archivos CSS y JS
En PrestaShop, ve a Preferencias > Rendimiento y activa "Combinar archivos CSS" y "Combinar archivos JavaScript". También activa "Comprimir CSS" y "Comprimir JavaScript".
6.2 Cargar scripts de forma asíncrona
Usa el módulo AsyncJS o Defer JavaScript para que los scripts no bloqueen la renderización de la página. Esto es clave para el Core Web Vitals de Google.
Paso 7: Monitorizar y probar la velocidad
Después de aplicar estos cambios, verifica los resultados.
7.1 Herramientas de testeo
- GTmetrix: Muestra tiempos de carga y recomendaciones.
- Google PageSpeed Insights: Te da una puntuación y sugiere mejoras.
- Pingdom Tools: Ideal para ver la velocidad desde diferentes ubicaciones.
7.2 Interpretar los resultados
Busca que:
- Tiempo de carga sea menor a 3 segundos (ideal 1.5 segundos).
- PageSpeed Score sea superior a 80 en móvil y 90 en escritorio.
- First Contentful Paint (FCP) esté por debajo de 1.8 segundos.
Si ves que algún recurso no se sirve desde la CDN (por ejemplo, las imágenes siguen cargando desde tu dominio), revisa la configuración del módulo CDN en PrestaShop.
Preguntas frecuentes (FAQ)
¿Puedo acelerar PrestaShop sin usar CDN?
Sí, pero la CDN es muy recomendable si tienes tráfico internacional. Sin ella, la caché interna y la optimización de imágenes ya dan un buen empujón.
¿Qué hago si mi hosting es muy básico?
Considera actualizar a un plan VPS o dedicado. En cPanel, los planes compartidos tienen límites de recursos. Si tu tienda crece, el hosting compartido se queda corto.
¿El caché puede causar problemas con el carrito de compras?
No, el caché de páginas estáticas no afecta al carrito porque PrestaShop usa sesiones dinámicas para eso. Solo cachea páginas informativas (categorías, productos, CMS).
¿Cómo sé si mi CDN está funcionando?
Usa herramientas como WhatIsMyIP.com o Pingdom. Si ves que los archivos se sirven desde una IP de Cloudflare (o de tu CDN), está activa.
¿Debo desactivar la caché al hacer cambios en la tienda?
Sí, especialmente si modificas plantillas o módulos. Desactívala temporalmente y luego vuelve a activarla. En PrestaShop, puedes purgar la caché desde "Preferencias > Rendimiento > Limpiar caché".
Conclusión
Acelerar PrestaShop en cPanel no es complicado si sigues estos pasos. La combinación de caché interna + CDN + optimización de imágenes puede reducir los tiempos de carga de 5-6 segundos a menos de 2 segundos. Recuerda que la velocidad impacta directamente en tus ventas y en el SEO.
Empieza por lo más sencillo: activa la caché en PrestaShop, comprime imágenes y configura una CDN gratuita como Cloudflare. Luego, ajusta la base de datos y el PHP. Verás cómo tu tienda responde mucho más rápido.
Si te surge alguna duda, déjala en los comentarios. ¡Tu tienda online te lo agradecerá!
