Cómo optimizar la velocidad de PrestaShop en Plesk
Cuando tu tienda PrestaShop va lenta, los clientes se impacientan y las ventas caen. Como SysAdmin, tu objetivo es que la tienda vuele, y si usas Plesk como panel de control, estás de suerte. En esta guía extensa, te explico paso a paso cómo optimizar la velocidad de PrestaShop en Plesk, desde la configuración del servidor hasta ajustes finos de la tienda. No necesitas ser un experto, solo seguir estas recomendaciones prácticas.
¿Por qué es importante optimizar PrestaShop en Plesk?
La velocidad de carga afecta directamente la experiencia de usuario y el SEO. Google penaliza las tiendas lentas, y los estudios muestran que un retraso de 1 segundo reduce las conversiones hasta un 7%. Además, Plesk es un entorno potente pero con configuraciones por defecto que no siempre están afinadas para PrestaShop. Un SysAdmin que optimiza bien puede duplicar la velocidad sin cambiar de hosting.
[INFO] La optimización en Plesk combina ajustes del servidor (PHP, MySQL, caché) con mejoras propias de PrestaShop. No descuides ninguno de los dos lados.
Preparación: Evalúa el estado actual de tu tienda
Antes de tocar nada, mide la velocidad actual. Usa herramientas como Google PageSpeed Insights o GTmetrix. Anota el tiempo de carga, el tamaño de página y las peticiones. Esto te servirá para comparar después.
También revisa los logs de Plesk: ve a Herramientas y Configuración > Registros y busca errores de PHP o MySQL que puedan estar ralentizando.
Configura PHP correctamente en Plesk
PrestaShop corre sobre PHP, y Plesk permite ajustar su versión y parámetros clave.
Elige la versión de PHP adecuada
En Plesk, ve a Hosting y DNS > PHP Settings. Selecciona PHP 8.0 o superior (PrestaShop 8.x lo soporta bien). Las versiones más nuevas son más rápidas y seguras.
Aumenta los límites de memoria y ejecución
PrestaShop consume recursos al procesar imágenes, módulos o catálogos grandes. Ajusta estos valores en la misma sección:
- memory_limit: 256M o 512M si tienes muchos productos.
- max_execution_time: 300 segundos (para imports/exports).
- max_input_time: 300 segundos.
- upload_max_filesize: 64M (para imágenes).
- post_max_size: 64M.
Guarda los cambios. Si tu tienda usa muchos módulos, sube memory_limit a 512M.
Activa OPcache
OPcache acelera PHP almacenando scripts compilados en memoria. En Plesk, en PHP Settings, busca OPcache y actívalo. Configura:
- opcache.enable=1
- opcache.memory_consumption=128
- opcache.max_accelerated_files=4000
- opcache.revalidate_freq=60
Esto reduce la carga del servidor y acelera las páginas dinámicas.
[TIP] Después de cambiar ajustes de PHP, reinicia el servicio desde Plesk: Herramientas y Configuración > Servicios > Reiniciar PHP.
Optimiza MySQL y la base de datos de PrestaShop
La base de datos es el cuello de botella en PrestaShop. En Plesk, puedes mejorar su rendimiento.
Ajusta los parámetros de MySQL
Accede a Herramientas y Configuración > Configuración del Servidor de Base de Datos (o edita el archivo my.cnf vía SSH). Recomendaciones:
- innodb_buffer_pool_size: 1-2 GB (si tienes RAM suficiente). Esto cachea tablas e índices.
- query_cache_size: 0 (desactivado en MySQL 8, mejor usar índices).
- max_connections: 100-200 (dependiendo del tráfico).
- tmp_table_size y max_heap_table_size: 64M cada uno.
Guarda y reinicia MySQL desde Plesk.
Mantén la base de datos limpia
PrestaShop acumula logs, carritos abandonados y versiones viejas. Usa el módulo nativo "Mantenimiento de Base de Datos" o ejecuta estas consultas vía phpMyAdmin:
- Vacía la tabla
ps_connections(datos de navegación antiguos). - Elimina carritos abandonados de más de 30 días.
- Optimiza todas las tablas (selecciona todas y elige "Optimizar tabla" en phpMyAdmin).
Programa estas tareas semanalmente.
Activa la caché en PrestaShop y en el servidor
La caché reduce las consultas a base de datos y acelera la entrega de contenido.
Caché interna de PrestaShop
En el panel de administración de PrestaShop, ve a Preferencias > Rendimiento. Activa:
- Cache: Sí.
- Sistema de caché: Elige "Memcached" si tienes instalado el servicio en Plesk (o "File System" si no). Memcached es más rápido.
- Caché de Smarty: Sí, con "Recompilar plantillas" en "Nunca recompilar" (solo si no modificas temas constantemente).
Caché de página con Varnish (en Plesk)
Plesk tiene soporte para Varnish, un acelerador HTTP. Instálalo desde Extensiones > Varnish Cache. Configúralo para que cachee páginas de PrestaShop (excluyendo carrito y login). Esto puede reducir el tiempo de carga un 80%.
[WARNING] Varnish puede causar problemas con módulos de personalización. Prueba en un entorno de staging primero.
Caché de navegador con Plesk
En Hosting y DNS > Apache y nginx Settings, activa nginx caching y configura:
- Caché estática: Activa para archivos .css, .js, .jpg, etc.
- Tiempo de expiración: 1 semana para imágenes, 1 día para CSS/JS.
Esto hace que los navegadores de los clientes guarden archivos y no los descarguen de nuevo.
Comprime y optimiza imágenes
Las imágenes son el mayor lastre en PrestaShop. Un SysAdmin debe asegurarse de que se sirvan comprimidas.
Activa la compresión gzip en Plesk
En Apache y nginx Settings, marca Comprimir contenido (gzip). Esto reduce el tamaño de HTML, CSS y JS hasta un 70%.
Usa el módulo de PrestaShop para imágenes
En el panel de PrestaShop, ve a Preferencias > Imágenes. Elige el formato WebP si tu servidor lo soporta (PHP 8+ lo hace). Activa Compresión JPEG al 85% y redimensiona las imágenes a las medidas exactas que usa tu tema. No subas imágenes de 4000px si se muestran a 800px.
Optimiza imágenes subidas
Antes de subir imágenes, pásalas por herramientas como TinyPNG o Squoosh. También puedes instalar módulos como "PrestaShop WebP" que convierten automáticamente.
Minimiza CSS, JavaScript y HTML
Reducir el tamaño de los archivos mejora la velocidad.
Activa la minimización en PrestaShop
En Preferencias > Rendimiento, activa:
- Minimizar CSS: Sí.
- Minimizar JavaScript: Sí.
- Combinar JavaScript: Sí (reduce peticiones HTTP).
- Combinar CSS: Sí.
Usa un CDN para archivos estáticos
Plesk se integra con CDNs como Cloudflare o StackPath. Configura un CDN en Hosting y DNS > CDN (si tu plan lo incluye). Sirve imágenes, CSS y JS desde el CDN, descargando tu servidor.
[TIP] Si no tienes CDN, al menos activa nginx como proxy inverso en Plesk. Va en Apache y nginx Settings > Proxy mode.
Ajusta la configuración de Plesk para alto rendimiento
Desactiva módulos innecesarios de Plesk
Ve a Extensiones y desactiva las que no uses (por ejemplo, WordPress Toolkit si solo tienes PrestaShop). Cada extensión consume recursos.
Programa tareas de mantenimiento
En Herramientas y Configuración > Programador de tareas, añade un cron que ejecute cada noche:
php /ruta/a/prestashop/cronjobs/cron.php(para tareas de PrestaShop).- Un script que limpie logs y tablas temporales.
Monitorea el uso de recursos
Usa Herramientas y Configuración > Monitor de Recursos en Plesk para ver CPU, RAM y disco. Si ves picos, investiga qué proceso los causa.
Configura un servidor de correo ligero
PrestaShop envía correos (pedidos, recuperación de carritos). Si usas el servidor de correo de Plesk, puede ralentizar la tienda. Mejor:
- Usa un servicio externo como SendGrid o SMTP de Gmail.
- En PrestaShop, ve a Parámetros Avanzados > Email y configura SMTP externo.
Implementa lazy loading y optimización de base de datos
Lazy loading para imágenes
En PrestaShop 8, activa Carga diferida de imágenes en Preferencias > Rendimiento. Las imágenes se cargan solo cuando el usuario las ve, ahorrando ancho de banda.
Indexa las tablas de la base de datos
En phpMyAdmin, ejecuta SHOW INDEX FROM ps_product para ver índices. Si faltan, añádelos en campos usados en búsquedas (como id_category, reference). Esto acelera consultas.
Prueba y monitorea después de la optimización
Después de aplicar todo, repite las pruebas de velocidad con GTmetrix o PageSpeed. Deberías ver una mejora de al menos 30-50%. Si no, revisa:
- ¿Hay módulos conflictivos? Desactívalos uno por uno.
- ¿El hosting es compartido? Considera migrar a un VPS con Plesk.
[INFO] La optimización no es un evento único. Programa revisiones mensuales de logs y rendimiento.
Preguntas frecuentes (FAQ)
¿Puedo optimizar PrestaShop en Plesk sin ser SysAdmin?
Sí, los ajustes básicos (PHP, caché, imágenes) están al alcance de cualquier usuario con acceso a Plesk. Los pasos avanzados como Varnish o MySQL requieren más conocimiento, pero esta guía te da las bases.
¿Qué hago si mi tienda sigue lenta después de todo?
Revisa el hosting. Un servidor con poca RAM o CPU limitada no dará más de sí. También verifica si tu tema está bien codificado (algunos temas comerciales son pesados). Prueba con el tema predeterminado de PrestaShop para descartarlo.
¿Afecta la velocidad de Plesk a otros sitios en el mismo servidor?
Sí, si tienes varios sitios, un PrestaShop mal optimizado puede ralentizar todo. Por eso es clave aislar recursos: usa límites de PHP por dominio en Plesk (sección PHP Settings > Resource Limits).
¿Debo usar nginx o Apache en Plesk para PrestaShop?
Plesk permite ambos. nginx es más eficiente para contenido estático y alto tráfico. Apache es más flexible con módulos. La mejor opción: nginx como proxy inverso (actívalo en Apache y nginx Settings). Combina lo mejor de ambos.
Conclusión
Optimizar la velocidad de PrestaShop en Plesk es un trabajo de SysAdmin que paga dividendos en ventas y satisfacción del cliente. Desde ajustar PHP y MySQL hasta activar cachés y comprimir imágenes, cada paso suma. No te abrumes: empieza por lo más simple (PHP y caché) y ve avanzando. Con esta guía, tu tienda volará y tus clientes lo notarán.
[TIP] Guarda esta guía como referencia. La optimización es un proceso continuo, y cada actualización de PrestaShop o de Plesk puede requerir reajustes. ¡Manos a la obra!
