Optimizar velocidad de PrestaShop en Plesk: Guía avanzada
¿Por qué tu PrestaShop va lento en Plesk y cómo solucionarlo de forma definitiva?
Si tienes una tienda online hecha con PrestaShop alojada en un servidor con Plesk, seguramente en algún momento te has frustrado con los tiempos de carga. Un PrestaShop lento no solo molesta a tus clientes, sino que además te hace perder ventas y posiciones en Google. Pero no te preocupes: optimizar PrestaShop velocidad no es un misterio inalcanzable.
En esta guía avanzada, pero explicada de forma sencilla, vamos a recorrer paso a paso todas las técnicas y configuraciones que puedes aplicar en tu panel Plesk para acelerar PrestaShop hasta que vuele. No necesitas ser un experto en servidores, solo seguir las instrucciones con calma y en orden.
Vamos a ello.
1. Diagnóstico inicial: ¿Dónde está el cuello de botella?
Antes de tocar nada, es fundamental saber qué está haciendo lenta tu tienda. No sirve de nada activar cachés si el problema es otro. Te propongo un plan de diagnóstico básico pero muy efectivo.
1.1. Mide tu velocidad actual
Usa herramientas gratuitas como Google PageSpeed Insights, GTmetrix o Pingdom. Anota los tiempos de carga, el tamaño de la página y el número de peticiones. Esto te servirá como punto de partida para comparar después de cada cambio.
1.2. Revisa los logs de errores de Plesk
En Plesk, ve a tu dominio y busca la sección "Registros" o "Logs". Ahí podrás ver errores de PHP, de base de datos o de recursos. Si ves errores repetidos, son pistas clave del problema.
1.3. Comprueba el consumo de recursos
En Plesk, accede a "Administrador de recursos" o "Monitor de salud". Si tu sitio está usando el 100% de la CPU o la RAM constantemente, el problema es de recursos del servidor. Si es así, quizás necesites un plan superior o optimizar el código.
[WARNING] No saltes directamente a la caché sin hacer el diagnóstico. Optimizar a ciegas puede hacer que pierdas tiempo o incluso que rompas algo.
2. Configuración de PHP para PrestaShop en Plesk
La versión de PHP y su configuración son el corazón de PrestaShop. Una mala configuración puede hacer que todo vaya lento, sin importar lo bueno que sea tu servidor.
2.1. Usa PHP 8.1 o superior
Plesk te permite cambiar la versión de PHP fácilmente. Ve a "Configuración de PHP" en tu dominio y selecciona la versión más reciente y estable (8.1, 8.2 o 8.3). PrestaShop 8.x funciona perfectamente con PHP 8.1 y superiores. Las versiones antiguas de PHP (7.x) son mucho más lentas y tienen problemas de seguridad.
2.2. Ajusta los parámetros de memoria y ejecución
Dentro de la configuración de PHP en Plesk, busca estos valores y ajústalos:
- memory_limit: Súbelo a
256Mo512M. PrestaShop es un software pesado y necesita memoria. - max_execution_time: Ponlo a
300segundos. Esto evita que los procesos se corten a mitad de camino. - max_input_vars: Asegúrate de que sea al menos
5000. Si es menor, perderás datos de formularios y habrá errores extraños.
2.3. Activa el opcode caching (Zend OPcache)
El Zend OPcache guarda los scripts PHP compilados en memoria, evitando que se tengan que procesar en cada petición. Es un acelerador brutal.
En la configuración de PHP, busca la extensión opcache y actívala. Ajusta estos valores recomendados:
opcache.enable=1opcache.memory_consumption=128-
`opcache.max_accelerated_files=10000` opcache.revalidate_freq=60
[TIP] Si no ves estas opciones, es porque la extensión no está instalada. En Plesk, puedes instalarla desde la sección de "Extensiones de PHP" en el panel de administración del servidor.
3. Caché de PrestaShop: La clave para acelerar PrestaShop
PrestaShop tiene su propio sistema de caché, pero a menudo está desactivado o mal configurado. Vamos a activarlo y optimizarlo.
3.1. Activa la caché de Smarty
Ve al panel de administración de tu PrestaShop: Parámetros Avanzados > Rendimiento.
- Caché de plantillas: Actívala y selecciona "Recompilar las plantillas si se han modificado". Para un sitio en producción, la mejor opción es "Nunca recompilar las plantillas", pero solo si no vas a hacer cambios de diseño frecuentes.
- Caché combinada (CCC): Activa todas las opciones: Combinar archivos JavaScript, Combinar archivos CSS, Minimizar archivos JavaScript y Minimizar archivos CSS. Esto reduce el número de peticiones al servidor y el peso de las páginas.
3.2. Caché de consultas a la base de datos
En la misma pantalla, activa la "Caché de consultas a la base de datos". Esto guarda los resultados de las consultas SQL más comunes para no tener que ejecutarlas cada vez.
3.3. Caché de resultados (Cache para acelerar PrestaShop)
Activa la "Caché de resultados". Esto guarda el HTML generado de las páginas para servirlo directamente, sin pasar por el motor de PrestaShop.
[INFO] La caché de resultados es la más potente, pero puede causar problemas si tu tienda muestra información personalizada (carritos, precios por usuario). Si ves comportamientos raros, desactívala y usa solo la de Smarty y la de consultas.
4. Caché de servidor en Plesk: Varnish y Redis
Plesk integra herramientas de caché a nivel de servidor que van a revolucionar tu rendimiento.
4.1. Activa Varnish (si está disponible en tu plan)
Varnish es un caché HTTP que se coloca delante de tu servidor web y sirve las páginas desde memoria. Es increíblemente rápido.
En Plesk, puedes activarlo desde "Herramientas y ajustes > Acelerador web". Selecciona Varnish y configúralo para que funcione en el puerto 80 (o 8080). Después, en la configuración de tu dominio, en la sección "Hosting y DNS", cambia el puerto del sitio web al que indique Varnish.
[WARNING] Varnish puede interferir con la caché de PrestaShop. Asegúrate de que la caché de resultados de PrestaShop esté desactivada si usas Varnish, para evitar conflictos.
4.2. Configura Redis para caché y sesiones
Redis es una base de datos en memoria que es perfecta para caché y para guardar sesiones de usuario. Es mucho más rápido que guardar sesiones en archivos.
- Instala Redis: En Plesk, ve a "Herramientas y ajustes > Extensiones" y busca Redis. Instálalo.
- Configura PrestaShop para usar Redis: En el archivo
config/settings.inc.phpde tu PrestaShop, añade estas líneas al final:
define('_PS_CACHE_ENABLED_', '1');
define('_PS_CACHE_TYPE_', 'CacheMemcache');
define('_PS_MEMCACHE_SERVER_', '127.0.0.1');
define('_PS_MEMCACHE_PORT_', '11211');
[TIP] También puedes usar Redis para las sesiones. En el archivo
config/settings.inc.php, añade:
ini_set('session.save_handler', 'redis');
ini_set('session.save_path', 'tcp://127.0.0.1:6379');
Esto hará que las sesiones de tus clientes se guarden en Redis, liberando al servidor de archivos temporales y acelerando la experiencia de compra.
5. Optimización de la base de datos
La base de datos es el otro gran cuello de botella. Una base de datos desorganizada puede hacer que todo vaya lento.
5.1. Usa el optimizador de PrestaShop
En el panel de administración, ve a Parámetros Avanzados > Base de datos y haz clic en "Optimizar". Esto ejecutará consultas para limpiar tablas y mejorar su rendimiento. Hazlo al menos una vez a la semana.
5.2. Limpia tablas de caché y logs
PrestaShop acumula mucha basura en tablas como ps_cache, ps_log, ps_connections y ps_connections_page. Puedes vaciarlas manualmente con phpMyAdmin (desde Plesk) o usando un módulo de limpieza.
5.3. Indexa las tablas correctamente
Asegúrate de que todas las tablas de PrestaShop tienen índices. Puedes usar phpMyAdmin para revisar y añadir índices a las columnas que se usan en las búsquedas (como id_product, id_category, etc.). Esto acelera las consultas de forma drástica.
[INFO] Si no te sientes cómodo tocando la base de datos, usa un módulo como "Advanced Database Cleaner" que automatiza estas tareas.
6. Compresión y optimización de imágenes
Las imágenes son, casi siempre, el mayor peso de una página. Si las tienes sin optimizar, tu tienda será lenta sí o sí.
6.1. Activa la compresión en Plesk
En Plesk, ve a "Configuración de Apache y nginx" de tu dominio y activa la "Compresión gzip". Esto comprimirá los archivos HTML, CSS y JS antes de enviarlos al navegador, reduciendo el tiempo de descarga.
6.2. Optimiza las imágenes de tu tienda
- Usa el formato WebP: Puedes instalar un módulo de PrestaShop que convierta automáticamente tus imágenes a WebP.
- Comprime antes de subir: Usa herramientas como TinyPNG o Squoosh para reducir el peso de tus imágenes sin perder calidad.
- Configura el tamaño correcto: En PrestaShop, ve a Diseño > Imágenes y ajusta los tamaños de imagen para que no generes imágenes más grandes de lo necesario.
[TIP] Una imagen de producto debería pesar menos de 100 KB. Si pesa más, es que está sin optimizar.
7. Configuración de nginx y Apache en Plesk
Plesk usa nginx como proxy inverso y Apache como servidor principal. Puedes sacar mucho partido a esta configuración.
7.1. Ajusta el buffer de nginx
En la configuración de nginx de tu dominio, puedes aumentar los buffers de proxy para que maneje mejor las páginas grandes. Añade estas líneas a la configuración adicional de nginx:
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
7.2. Configura el tiempo de espera de Apache
En la configuración de Apache, asegúrate de que KeepAlive está activado y que KeepAliveTimeout es de 5 segundos. Esto permite que el servidor mantenga conexiones abiertas con los navegadores, reduciendo la latencia.
8. Módulos y temas: Menos es más
A veces, la lentitud viene de la propia tienda y no del servidor.
8.1. Desactiva módulos innecesarios
Revisa tu lista de módulos y desactiva todos los que no uses. Cada módulo activo añade código y peticiones a la página. Si no lo usas, desactívalo o desinstálalo.
8.2. Elige un tema ligero
Los temas con muchos efectos visuales, sliders y animaciones son un lastre. Usa un tema optimizado para velocidad o, al menos, que no cargue toneladas de JavaScript.
8.3. Evita los módulos de caché de terceros mal configurados
Hay muchos módulos que prometen acelerar PrestaShop pero que en realidad lo ralentizan. Si no estás seguro, es mejor usar la caché nativa de PrestaShop y la del servidor.
9. Mantenimiento regular para un rendimiento sostenido
La optimización no es un trabajo de una sola vez. Es un mantenimiento continuo.
9.1. Programa tareas de limpieza
Crea una tarea cron en Plesk (en "Herramientas y ajustes > Tareas programadas") para que se ejecute diariamente un script que limpie las tablas de caché y logs de PrestaShop.
9.2. Actualiza todo
Mantén PrestaShop, los módulos y el tema actualizados. Cada actualización suele traer mejoras de rendimiento y seguridad.
9.3. Monitoriza tu velocidad
Vuelve a pasar las pruebas de velocidad cada mes. Si notas que los tiempos suben, repite el diagnóstico inicial.
[WARNING] Si en algún momento te sientes perdido o el problema persiste, considera contratar a un profesional especializado en PrestaShop Plesk rendimiento. A veces, un par de ojos expertos ahorran horas de frustración.
Preguntas Frecuentes (FAQ)
¿Es necesario usar un CDN para acelerar PrestaShop?
No es obligatorio, pero si tu audiencia es internacional, un CDN como Cloudflare o KeyCDN puede reducir enormemente la latencia. Guarda los archivos estáticos en el CDN y el servidor se liberará de trabajo.
¿Qué es mejor: Varnish o Redis?
Son complementarios. Varnish guarda páginas completas en memoria, mientras que Redis se usa para caché de consultas y sesiones. Si puedes, usa ambos.
¿Puedo activar la caché de resultados si uso Varnish?
No, deberías desactivar la caché de resultados de PrestaShop si usas Varnish para evitar conflictos. Varnish ya se encarga de servir las páginas cacheadas.
¿Cómo accedo a la configuración de PHP en Plesk?
Dentro del panel de Plesk, ve a tu dominio y busca la sección "Configuración de PHP". Ahí podrás cambiar la versión y los parámetros.
¿Qué hago si mi servidor no tiene Varnish o Redis disponibles?
Si tu plan no incluye estas herramientas, aún puedes optimizar mucho con la caché de PrestaShop, la compresión de imágenes y una buena configuración de PHP. Si el rendimiento sigue siendo malo, considera migrar a un plan superior o a un servidor VPS.
¿Es normal que PrestaShop consuma mucha RAM?
Sí, PrestaShop es un software que consume recursos. Por eso es importante tener un buen límite de memoria en PHP y usar caché para reducir la carga.
Conclusión: Tu tienda puede ser rápida
Optimizar PrestaShop velocidad en Plesk es un proceso de varios pasos, pero no es complicado si vas con orden. Empieza por el diagnóstico, sigue con la configuración de PHP, activa las cachés de PrestaShop y del servidor, y termina con la optimización de imágenes y un mantenimiento regular.
Recuerda que acelerar PrestaShop no es solo una cuestión de tecnología, sino también de buenas prácticas. Un sitio limpio, con pocos módulos y bien configurado, siempre será más rápido que uno lleno de complementos innecesarios.
Aplica estos consejos, mide los resultados y verás cómo tus tiempos de carga mejoran drásticamente. Tus clientes (y Google) te lo agradecerán.
[TIP] No intentes hacer todos los cambios a la vez. Ve paso a paso, mide el impacto de cada cambio y así sabrás cuál es el que más te beneficia. Así evitarás errores y aprenderás mucho sobre tu tienda.
