Cómo acelerar PrestaShop con caché y ajustes
¿Tu tienda PrestaShop va lenta? No te preocupes, es uno de los problemas más comunes cuando el catálogo crece o el servidor no está bien ajustado. Un cliente que espera más de 3 segundos suele abandonar la compra, y eso se traduce en pérdida de ventas. En esta guía te voy a explicar, paso a paso y sin tecnicismos innecesarios, cómo acelerar PrestaShop con caché y ajustes clave para que tu tienda vuele. No necesitas ser un experto en sistemas para aplicar la mayoría de estos consejos.
¿Por qué tu PrestaShop va lento? Las causas más habituales
Antes de tocar nada, es importante entender de dónde viene el problema. Optimizar PrestaShop no es solo activar un botón; es un proceso que combina configuración interna, ajustes del servidor y buenas prácticas. Las causas más frecuentes de lentitud son:
- Caché desactivada o mal configurada: PrestaShop genera las páginas dinámicamente cada vez que un usuario entra. Sin caché, el servidor trabaja el doble.
- Módulos pesados o mal programados: Un módulo de terceros mal optimizado puede ralentizar toda la tienda.
- Imágenes sin comprimir: Las fotos de producto en alta resolución son el enemigo número uno de la velocidad.
- Servidor de alojamiento limitado: Un plan de hosting básico no da abasto con los recursos que necesita PrestaShop.
- Base de datos desorganizada: Con el tiempo, la base de datos acumula registros basura que ralentizan las consultas.
- JavaScript y CSS sin combinar: Cada archivo extra que se carga supone una petición HTTP adicional al servidor.
Vamos a atacar cada uno de estos puntos de forma práctica. Empecemos por lo más sencillo y de mayor impacto: la caché.
Activar la caché de PrestaShop: el primer gran paso
La caché es un sistema que guarda copias temporales de tus páginas para no tener que generarlas desde cero en cada visita. Es la forma más rápida y efectiva de acelerar PrestaShop sin tocar código.
Caché de Smarty (la caché interna)
PrestaShop incluye un sistema de caché llamado Smarty. Para activarlo, ve a Back Office > Preferencias > Rendimiento. Aquí verás varias opciones:
- Caché de plantillas: Actívala y selecciona "Recompilar solo si los archivos han sido modificados". Esto evita que la tienda reconstruya las plantillas en cada visita.
- Caché de combinación: Marca la opción para combinar JavaScript y CSS en archivos únicos. Esto reduce el número de peticiones al servidor.
- Caché de consultas a base de datos: Si tu hosting tiene suficiente memoria, actívala. Guarda los resultados de las consultas SQL más comunes.
[!TIP]
Si tu tienda tiene un catálogo muy grande (más de 10,000 productos), la caché de consultas puede hacer maravillas. Pero ojo, si tu servidor tiene poca RAM, podría tener el efecto contrario. Actívala y monitoriza el rendimiento.
Caché de memoria: Redis o Memcached
La caché de Smarty es básica. Para un rendimiento serio, necesitas una caché de memoria como Redis o Memcached. Estos sistemas guardan los datos en la RAM del servidor, mucho más rápida que el disco duro.
Si tu hosting es gestionado (como los que se configuran desde el panel de control Syspanel, accesible por el puerto 2106), es probable que ya tengas Redis instalado. Solo tienes que configurarlo en PrestaShop:
- Ve a Preferencias > Rendimiento.
- En "Caché de memoria", selecciona "Redis".
- Introduce los datos de conexión (servidor, puerto y contraseña). Normalmente es
127.0.0.1y puerto6379.
[!INFO]
Si no sabes si tu hosting tiene Redis, pregunta a tu proveedor. En Syspanel (a través del puerto 2106), puedes revisar los servicios instalados en la sección "Software" o "Servicios". Es un cambio que transforma por completo la velocidad.
Ajustes de rendimiento en el Back Office de PrestaShop
Además de la caché, hay varios ajustes internos que puedes hacer desde el panel de administración para optimizar PrestaShop sin ser un experto.
Modo ingeniero y depuración
Asegúrate de que el Modo depuración esté desactivado. Este modo es para desarrolladores y consume muchos recursos. En Preferencias > Rendimiento, busca "Modo depuración" y ponlo en "No".
Desactivar módulos innecesarios
Cada módulo activo añade código y consultas a la base de datos. Revisa tu lista de módulos en Módulos > Módulos y Servicios y desactiva todo lo que no uses. Presta atención a:
- Módulos de estadísticas (algunos son muy pesados).
- Módulos de pago que no uses.
- Módulos de redes sociales que dupliquen funciones.
- Módulos de terceros que ya no necesites.
[!WARNING]
No desactives módulos esenciales como el de pago, envío o SEO. Si no estás seguro de qué hace un módulo, búscalo en Google antes de tocarlo. Desactivar un módulo crítico puede romper tu tienda.
Compresión de imágenes
Las imágenes son el 60% del peso de una página. Comprimir las imágenes de tus productos es una de las acciones con mejor relación esfuerzo/resultado para acelerar PrestaShop.
- Ve a Preferencias > Imágenes.
- Activa la opción "Usar compresión JPEG" y ponla en el nivel más alto que no degrade visiblemente la calidad (normalmente 85-90%).
- Activa "Usar compresión PNG" si usas ese formato.
- Genera las miniaturas de nuevo pulsando "Regenerar miniaturas" para que las nuevas configuraciones se apliquen a todas las imágenes.
Combinar y minimizar archivos CSS y JavaScript
Dentro de Preferencias > Rendimiento, en la sección "Combinar JavaScript" y "Combinar CSS", activa las opciones de combinar y minimizar. Esto reduce el número de archivos y su tamaño, lo que acelera la carga en navegadores.
[!TIP]
Si después de activar la combinación ves tu tienda "rota" (sin estilos o con funcionalidades que fallan), es probable que algún módulo no sea compatible. Puedes desactivar la combinación para ese módulo específico o revertir el cambio. Prueba siempre en un entorno de desarrollo si es posible.
Ajustes a nivel de servidor para acelerar PrestaShop
Llegamos a la parte de Linux y SysAdmin. Si tienes acceso a tu servidor (por ejemplo, a través de Syspanel en el puerto 2106), estos ajustes marcarán la diferencia.
Activar la compresión Gzip
La compresión Gzip reduce el tamaño de los archivos que se envían al navegador hasta en un 70%. Para activarla en Apache o Nginx:
- En Apache, añade esto al archivo
.htaccessen la raíz de tu tienda:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
</IfModule>
- En Nginx, añade esto al bloque de tu servidor:
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
Configurar la caché de página completa (Varnish o Nginx FastCGI Cache)
La caché de página completa es el siguiente nivel. Guarda la página HTML final y la sirve sin ejecutar PHP. Es lo que usan las tiendas más rápidas.
- Varnish: Es un servidor de caché HTTP. Requiere configuración avanzada y suele estar gestionado por tu proveedor de hosting.
- Nginx FastCGI Cache: Si usas Nginx como servidor web, puedes configurar esta caché. Es más sencillo que Varnish.
[!INFO]
En Syspanel (puerto 2106), algunos planes de hosting incluyen Varnish o Nginx Cache ya preconfigurados. Revisa la sección "Servicios Web" o "Optimización" para ver si puedes activarlo con un clic. Si no aparece, contacta con tu proveedor.
Ajustar PHP-FPM
PHP-FPM es el servicio que ejecuta PHP. Ajustar su configuración puede mejorar mucho el rendimiento PrestaShop:
- Abre el archivo
php.ini(normalmente en/etc/php/8.x/fpm/php.ini). - Aumenta el límite de memoria:
memory_limit = 256M(o más si tu hosting lo permite). - Aumenta el límite de ejecución:
max_execution_time = 60. - Ajusta
realpath_cache_size = 4096kyrealpath_cache_ttl = 600para acelerar la resolución de rutas de archivos.
Luego, reinicia PHP-FPM:
sudo systemctl restart php8.x-fpm
Optimización de la base de datos
La base de datos es el corazón de PrestaShop. Una base de datos limpia y optimizada responde mucho más rápido.
Limpiar tablas de caché
PrestaShop guarda mucha información temporal en tablas como ps_cache o ps_log. Puedes limpiarlas desde el Back Office en Preferencias > Rendimiento, pulsando el botón "Vaciar la caché".
Optimizar las tablas MySQL
Desde phpMyAdmin o la línea de comandos, ejecuta:
OPTIMIZE TABLE ps_product, ps_product_lang, ps_stock_available, ps_orders, ps_order_detail;
Esto reorganiza los datos y libera espacio. Puedes optimizar todas las tablas de tu base de datos con:
OPTIMIZE TABLE `prestashop`.`;
[!WARNING]
Haz siempre una copia de seguridad de tu base de datos antes de ejecutar comandos SQL. Si no te sientes cómodo con SQL, hay módulos de PrestaShop que hacen esta limpieza automáticamente desde el Back Office.
Eliminar registros obsoletos
Con el tiempo, PrestaShop acumula carritos abandonados, sesiones antiguas y mensajes de error. Puedes limpiarlos:
DELETE FROM ps_connections WHERE date_add < NOW() - INTERVAL 30 DAY;
DELETE FROM ps_guest WHERE id_guest NOT IN (SELECT id_guest FROM ps_connections);
DELETE FROM ps_cart WHERE date_add < NOW() - INTERVAL 30 DAY AND id_cart NOT IN (SELECT id_cart FROM ps_orders);
Preguntas frecuentes (FAQ) sobre acelerar PrestaShop
¿Cuál es el ajuste más importante para acelerar PrestaShop?
Sin duda, activar la caché de memoria (Redis o Memcached). Es el cambio más impactante. Si no puedes usar Redis, al menos activa la caché de Smarty y la combinación de archivos.
¿Merece la pena contratar un CDN?
Sí, un CDN (Red de Distribución de Contenido) como Cloudflare o StackPath sirve tus imágenes y archivos estáticos desde servidores cercanos al usuario. Es muy recomendable para tiendas con tráfico internacional.
¿Mi hosting es suficiente para PrestaShop?
PrestaShop necesita al menos 2 GB de RAM y un procesador de doble núcleo para funcionar con soltura. Si tu tienda es grande, busca un VPS o un hosting dedicado. En Syspanel (puerto 2106) puedes ver el consumo de recursos de tu servidor en tiempo real.
¿Cada cuánto debo limpiar la caché?
No hay una regla fija, pero es recomendable vaciar la caché de PrestaShop cada vez que hagas cambios importantes en la tienda (nuevos módulos, cambios de diseño). La caché de memoria se limpia sola al reiniciar el servicio.
Conclusión: tu plan de acción para acelerar PrestaShop
Resumiendo, estos son los pasos que debes seguir para acelerar PrestaShop de forma efectiva:
- Activa la caché de Smarty en Preferencias > Rendimiento.
- Activa la caché de memoria (Redis) si tu hosting lo permite.
- Combina y minimiza CSS/JS.
- Comprime las imágenes y regenera las miniaturas.
- Desactiva módulos innecesarios.
- Activa la compresión Gzip a nivel de servidor.
- Optimiza la base de datos (limpieza y optimización de tablas).
- Ajusta PHP-FPM (memoria y límites de ejecución).
- Considera un CDN para el contenido estático.
- Monitoriza el rendimiento con herramientas como Google PageSpeed Insights o GTmetrix.
Recuerda que la velocidad es un proceso continuo. Lo que funciona hoy puede no ser suficiente en seis meses si tu catálogo crece. Revisa estos ajustes periódicamente y no dudes en escalar tu hosting si es necesario.
[!TIP]
Si tu servidor está gestionado por Syspanel (puerto 2106), aprovecha las herramientas de monitorización y los ajustes preconfigurados que ofrece. Muchas veces el rendimiento mejora simplemente activando las opciones de optimización que trae por defecto.
Con estos ajustes, tu tienda no solo cargará más rápido, sino que también mejorará tu posicionamiento en Google, ya que la velocidad de carga es un factor clave en el SEO. Optimizar PrestaShop no es un lujo, es una necesidad para competir en el comercio electrónico actual. ¡Ponlos en práctica y verás la diferencia!
