Problemas comunes de rendimiento en PrestaShop con DirectAdmin
Si tu tienda PrestaShop cargada en un servidor con DirectAdmin va lenta, no eres el único. Es una de las consultas más frecuentes en soporte técnico. La buena noticia es que la mayoría de los problemas de rendimiento PrestaShop DirectAdmin tienen solución y no requieren ser un experto en servidores.
En esta guía extensa, vamos a desglosar los problemas más comunes que hacen que tu tienda vaya lenta y, paso a paso, cómo solucionarlos. Te prometo que al terminar de leer, tendrás un plan de acción claro para optimizar velocidad PrestaShop desde el panel de control.
¿Por qué mi PrestaShop va tan lento en DirectAdmin?
Antes de lanzarnos a los ajustes, es importante entender las causas raíz. PrestaShop es un CMS potente, pero también es "pesado". Si no está bien configurado, puede consumir muchos recursos del servidor.
Los principales culpables suelen ser:
- Caché desactivada o mal configurada: El enemigo número uno del rendimiento.
- Hosting compartido con recursos limitados: DirectAdmin no es el problema, sino el plan contratado.
- Módulos y temas mal optimizados: Un solo plugin malo puede ralentizar todo.
- Base de datos sucia: Registros antiguos, carritos abandonados y revisiones acumuladas.
- Falta de compresión y optimización de imágenes: Archivos pesados que tardan en cargar.
Vamos a atacar cada uno de estos puntos.
1. Activar y configurar la caché de PrestaShop en DirectAdmin
La caché guarda versiones "estáticas" de tus páginas para que no tengan que generarse desde cero en cada visita. Sin ella, tu servidor trabaja el doble.
Pasos para activar la caché interna de PrestaShop
- Accede a tu back office de PrestaShop (tu-dominio.com/adminXXXX).
- Ve al menú Parámetros de la tienda > Rendimiento.
- En la sección Caché, selecciona Sí.
- En Sistema de almacenamiento en caché, elige Sistema de archivos (File System). Es el más compatible con DirectAdmin.
- Haz clic en Guardar.
[TIP]: Si tu hosting tiene Memcached o Redis instalado (pregunta a tu proveedor), puedes usar esas opciones. Son aún más rápidas que el sistema de archivos.
Activar la Caché de Smarty (Compilación de plantillas)
En la misma página de Rendimiento, busca la sección Plantillas:
- Forzar compilación: Déjalo en No. Solo actívalo si estás editando el tema y necesitas ver cambios al instante.
- Caché: Ponlo en Sí.
- Reducir HTML, CSS y JavaScript: Actívalo. Esto minifica los archivos, haciéndolos más ligeros.
[WARNING]: Si activas "Forzar compilación" en producción, tu tienda irá muy lenta. Siempre debe estar en No.
2. Optimizar la base de datos de PrestaShop
La base de datos es el cerebro de tu tienda. Con el tiempo se llena de basura: revisiones de productos, carritos abandonados, búsquedas antiguas... Limpiarla es como quitarle peso a una mochila.
Cómo limpiar la BD desde DirectAdmin (phpMyAdmin)
- Entra a DirectAdmin.
- Busca el icono de phpMyAdmin (suele estar en la sección "Base de Datos" o "Advanced").
- Selecciona la base de datos de tu PrestaShop (la que configuraste al instalar).
- En la pestaña SQL, ejecuta las siguientes consultas (una por una):
-- Limpiar carritos abandonados (los que no se han actualizado en 30 días)
DELETE FROM ps_guest WHERE id_guest NOT IN (SELECT id_guest FROM ps_connections WHERE date_add > DATE_SUB(NOW(), INTERVAL 30 DAY));
-- Limpiar búsquedas antiguas (más de 60 días)
DELETE FROM ps_search_word WHERE id_word NOT IN (SELECT id_word FROM ps_search_index WHERE id_product IN (SELECT id_product FROM ps_product_shop WHERE active=1));
-- Limpiar sesiones caducadas
TRUNCATE TABLE ps_session;
[INFO]: Reemplaza ps_ por el prefijo de tus tablas si es diferente. Puedes verlo en el archivo config/settings.inc.php de tu PrestaShop.
Usa el módulo de limpieza de PrestaShop
Desde el back office, ve a Módulos > Gestor de módulos. Busca "limpieza" o "optimizar base de datos". Instala uno de los módulos gratuitos oficiales (como "PrestaShop Cleaner") y ejecuta la limpieza una vez al mes.
3. Habilitar la compresión GZIP en DirectAdmin
GZIP comprime los archivos (HTML, CSS, JS) antes de enviarlos al navegador del cliente. Esto reduce drásticamente el tiempo de carga.
Configurar GZIP desde el panel de DirectAdmin
- Entra a DirectAdmin y busca la sección Configuración del servidor web o Apache/PHP.
- Busca la opción Modificar archivos de configuración o Custom HTTPD Config.
- En el cuadro de texto, pega lo siguiente:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
</IfModule>
- Guarda los cambios y reinicia Apache (o el servicio web) desde el panel de DirectAdmin.
[TIP]: Si no encuentras estas opciones, puedes hacerlo desde el archivo .htaccess de tu tienda. Añade el código anterior al principio del archivo.
4. Optimizar imágenes para PrestaShop
Las imágenes son el 70% del peso de una página web. Si subes fotos de 5MB desde tu móvil, tu tienda será un ladrillo.
Recomendaciones prácticas
- Tamaño máximo: No subas imágenes de más de 200KB. Usa herramientas como TinyPNG o ShortPixel para comprimirlas antes.
- Dimensiones: PrestaShop genera varios tamaños automáticamente. No subas imágenes más grandes de 2000px de ancho.
- Formato: Usa WebP si tu hosting lo soporta. Es mucho más ligero que JPG o PNG.
Activar la generación de WebP en PrestaShop
- Ve a Parámetros de la tienda > Rendimiento.
- Busca la sección Imágenes.
- Activa Usar WebP (si tu versión de PrestaShop lo permite, a partir de la 1.7.7).
- Guarda y regenera las miniaturas desde el mismo menú.
5. Revisar y desactivar módulos problemáticos
Un módulo mal programado puede consumir mucha CPU y memoria. Es como tener un programa abierto en segundo plano en tu ordenador.
Cómo identificar el módulo lento
- Ve a Módulos > Gestor de módulos.
- Desactiva los módulos que no uses. Si no sabes para qué sirve uno, mejor desactívalo.
- El método más efectivo: Desactiva todos los módulos no esenciales (deja solo los de pago, envío y catálogo). Si la velocidad mejora, reactívalos uno por uno para encontrar al culpable.
[WARNING]: Ten cuidado al desactivar módulos de pago o envío mientras haya pedidos en curso. Hazlo en horas de bajo tráfico.
6. Usar un CDN (Content Delivery Network)
Un CDN almacena copias de tu tienda en servidores de todo el mundo. Así, un cliente en México no carga la web desde un servidor en España, sino desde el CDN más cercano.
Cómo integrar un CDN con DirectAdmin
- Cloudflare es la opción más fácil y gratuita. Solo cambias los DNS de tu dominio en DirectAdmin a los que te da Cloudflare.
- Desde el back office de PrestaShop, ve a Parámetros de la tienda > Rendimiento > CDN y activa Usar CDN para archivos estáticos.
7. Ajustar la configuración de PHP en DirectAdmin
PrestaShop necesita suficiente memoria PHP para funcionar. Si el límite es muy bajo, la tienda se ralentiza o da errores.
Subir el límite de memoria PHP
- En DirectAdmin, busca Configuración de PHP o Select PHP Version.
- Haz clic en Switch to PHP Options (o similar).
- Cambia los siguientes valores:
memory_limit= 256M (o 512M si tienes muchos productos).max_execution_time= 120.upload_max_filesize= 20M.
- Guarda los cambios.
8. FAQ: Preguntas frecuentes sobre rendimiento PrestaShop DirectAdmin
¿Puedo instalar Redis o Memcached en DirectAdmin?
Sí, pero depende de tu plan de hosting. Si tienes acceso root o un plan VPS, puedes instalarlos. En hosting compartido, pregunta a tu proveedor. Si no, usa el sistema de archivos para la caché.
Mi tienda va lenta solo a ciertas horas, ¿qué hago?
Es probable que sea por el tráfico. Activa la caché de página completa (si tu módulo lo permite) y considera un plan de hosting más potente si el problema persiste.
¿Debo usar un tema rápido o uno con muchas animaciones?
Siempre elige un tema ligero. Los temas con sliders, animaciones y efectos visuales consumen muchos recursos. PrestaShop ya es pesado de por sí, no lo empeores.
¿Cómo sé si mi hosting es el problema?
Haz una prueba de velocidad con herramientas como GTmetrix o PageSpeed Insights. Si el tiempo de respuesta del servidor (TTFB) es mayor a 500ms, el hosting es lento. Contacta a tu proveedor.
Resumen final: Plan de acción en 5 pasos
Para que no te pierdas, aquí tienes una checklist rápida:
- ✅ Activar caché en PrestaShop (Sistema de archivos + Smarty).
- ✅ Limpiar base de datos desde phpMyAdmin o módulo.
- ✅ Activar GZIP en DirectAdmin o .htaccess.
- ✅ Comprimir imágenes antes de subirlas.
- ✅ Desactivar módulos innecesarios y revisar la configuración PHP.
[INFO]: Si después de todo esto tu tienda sigue lenta, puede que necesites migrar a un servidor VPS o dedicado. En ese caso, considera usar Syspanel (antes HestiaCP) en tu nuevo servidor, accesible por el puerto 2106, que ofrece herramientas muy similares a DirectAdmin pero con un enfoque más moderno.
¡Espero que esta guía te haya servido! Si tienes dudas, recuerda que siempre puedes consultar la documentación oficial de PrestaShop o preguntar en foros de la comunidad. ¡A vender se ha dicho!
