Optimizar el rendimiento de PrestaShop en Plesk: guía práctica
¿Tu tienda PrestaShop va lenta? ¿Los clientes se quejan de que las páginas tardan en cargar y abandonan el carrito antes de comprar? No te preocupes, es uno de los problemas más comunes cuando se gestiona una tienda online en un servidor propio. La buena noticia es que optimizar PrestaShop Plesk no requiere ser un gurú de la informática. Con esta guía práctica, paso a paso, vas a aprender a acelerar PrestaShop y a exprimir al máximo el rendimiento de tu hosting, todo desde el panel de control Plesk.
Vamos a ir de lo más sencillo a lo más técnico, pero siempre explicado como si estuvieras tomando un café con un amigo que sabe de esto. Al final de este artículo, tu tienda volará y tus visitantes lo notarán.
Entendiendo el "Cuello de Botella" de tu Tienda
Antes de tocar nada, es clave entender por qué PrestaShop puede volverse lento. No es que el software sea malo, sino que es muy completo y potente. Cada módulo, cada imagen y cada consulta a la base de datos consume recursos del servidor.
Cuando usas Plesk, tienes el control total del servidor, lo cual es genial, pero también implica que debes configurarlo bien. Es como tener un coche deportivo: si no le haces el mantenimiento, acaba yendo más lento que un triciclo.
Los tres grandes culpables de la lentitud son:
- El almacenamiento en caché: Si no se guardan copias de las páginas, el servidor tiene que "cocinarlas" desde cero cada vez que alguien entra.
- Las imágenes pesadas: Fotos de productos en alta resolución sin comprimir son una losa para la carga.
- La configuración del servidor web: Si Apache o Nginx no están ajustados, no aprovechan el hardware.
No te abrumes. Vamos a atacar cada punto de forma práctica.
Activar el Caché de PrestaShop (El Primer Gran Paso)
Esto es lo más fácil y lo que más impacto tiene. PrestaShop tiene un sistema de caché integrado que a menudo viene desactivado por defecto. Vamos a encenderlo.
Configuración desde el Panel de Administración
- Accede a tu panel de administración de PrestaShop (normalmente en
tudominio.com/admin). - Ve al menú Parámetros Avanzados y luego a Rendimiento.
- Busca la opción Caché de combinación de plantillas. Actívala. Esto combina los archivos CSS y JavaScript en uno solo, reduciendo las peticiones al servidor.
- En Caché del servidor, selecciona Caché de archivos. Es la opción más segura y compatible con la mayoría de servidores.
[TIP] Después de hacer cambios en esta página, verás un botón que dice "Vaciar la caché". Púlsalo siempre que modifiques algo en el diseño o instales módulos, o verás versiones antiguas de tu tienda.
Activar el Caché de PHP (OPcache)
OPcache guarda los scripts PHP ya compilados en la memoria. Es como tener el libro ya abierto por la página correcta en lugar de buscarlo cada vez.
Para activarlo en Plesk:
- Ve a tu dominio en Plesk.
- Entra en Configuración de PHP (a veces aparece como "PHP Settings").
- Busca el parámetro
opcache.enabley ponlo en On. - Guarda los cambios.
Con esto, ya has hecho un 50% del trabajo. Pero sigamos, que hay más.
Acelerar PrestaShop con la Compresión de Imágenes
El 60% del peso de una página web suele ser imágenes. Si tus fotos de producto pesan 2 MB cada una, tienes un problema grave. La solución no es quitar calidad visual, sino optimizarlas.
Herramientas Manuales vs. Automáticas
Puedes usar herramientas online como TinyPNG o comprimir las imágenes antes de subirlas. Pero, ¿quién tiene tiempo para eso con cientos de productos?
La solución inteligente es instalar un módulo de compresión automática. Busca en el marketplace de PrestaShop módulos como "Smush" o "PageSpeed". Estos módulos comprimen las imágenes que ya tienes subidas y las que subas en el futuro.
[WARNING] Antes de instalar cualquier módulo de compresión, haz una copia de seguridad de tu base de datos y archivos. Si algo sale mal, podrás revertirlo. En Plesk, puedes hacerlo fácilmente desde la sección "Copias de seguridad".
Configurar la Generación de Miniaturas
PrestaShop crea varias copias de cada imagen para los distintos tamaños (listado, zoom, carrito). Si esta generación no está optimizada, ralentiza la carga.
En Parámetros Avanzados > Rendimiento, busca Regeneración de miniaturas. Te recomiendo configurarlo para que se genere solo cuando sea necesario y no en cada visita.
Ajustes Clave en el Servidor Web (Nginx y Apache)
Ahora nos ponemos un poco más técnicos, pero te lo explico fácil. Plesk nos permite usar Nginx como proxy inverso. Esto significa que Nginx se encarga de servir los archivos estáticos (imágenes, CSS, JS) que son los que más pesan, liberando a Apache para que se centre en el código PHP.
Habilitar Nginx como Proxy Inverso
- En Plesk, ve a tu dominio y entra en Apache y nginx.
- Marca la casilla Activar nginx.
- En la sección de Configuración de nginx, añade las siguientes líneas en el campo de directivas adicionales para servir caché de archivos estáticos:
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
Este código le dice a Nginx que guarde en la memoria del navegador del visitante esos archivos durante 30 días. Así, cuando un cliente vuelva a tu tienda, las imágenes no se descargarán de nuevo.
[INFO] No te asustes si ves código. Es copiar y pegar. Si tienes dudas, siempre puedes consultar con tu proveedor de hosting o con un técnico. Pero este paso es de los que más notan la diferencia.
Ajustar el Tiempo de Espera de PHP
A veces, el servidor mata un proceso PHP que tarda demasiado. Para evitar errores en páginas complejas, sube el límite de tiempo.
- Ve a Configuración de PHP en Plesk.
- Busca
max_execution_timey ponlo a 300 (segundos). - Busca
memory_limity ponlo al menos a 256M (megas). Si tu hosting te lo permite, 512M es mejor para tiendas grandes.
Optimizar la Base de Datos para un Rendimiento PrestaShop Superior
La base de datos es el cerebro de PrestaShop. Si está llena de basura, todo va lento.
Tablas y Consultas
PrestaShop guarda muchas sesiones y datos temporales. Limpiarlos es vital.
- Accede a phpMyAdmin desde Plesk (normalmente en "Bases de datos").
- Selecciona la base de datos de tu tienda.
- Haz clic en la pestaña SQL y ejecuta el siguiente comando:
DELETE FROM ps_connections WHERE date_add < DATE_SUB(NOW(), INTERVAL 1 MONTH);
DELETE FROM ps_connections_page WHERE time_start < DATE_SUB(NOW(), INTERVAL 1 MONTH);
DELETE FROM ps_sessions WHERE date_add < DATE_SUB(NOW(), INTERVAL 1 MONTH);
Esto borra los registros de conexión y sesiones antiguas. No te preocupes, no borra pedidos ni clientes, solo datos de navegación.
[WARNING] Asegúrate de que el prefijo de las tablas es
ps_. Si no, cámbialo por el tuyo (puedes verlo en la lista de tablas). Ejecutar comandos SQL en la base de datos puede ser peligroso si no sabes lo que haces. Si no estás seguro, mejor usa un módulo de limpieza.
El Motor de Almacenamiento: InnoDB
Asegúrate de que tus tablas usan el motor InnoDB. Es más eficiente y soporta transacciones, lo que evita errores de datos.
En phpMyAdmin, puedes ver el motor de cada tabla. Si ves alguna con "MyISAM", puedes cambiarla:
- Marca todas las tablas.
- En el desplegable "Con seleccionadas", elige "Operaciones" y luego "Optimizar tablas".
- También puedes ejecutar el comando
ALTER TABLE nombre_tabla ENGINE = InnoDB;para cada tabla.
Usar una Red de Distribución de Contenido (CDN)
Si tu tienda vende a nivel internacional o tiene visitantes de todo el país, una CDN es tu mejor aliada. Una CDN guarda copias de tu tienda en servidores repartidos por todo el mundo.
Cuando un cliente entra desde Madrid, la página se carga desde el servidor de la CDN en Madrid, no desde tu servidor original en, digamos, Alemania. Esto reduce la latencia (el tiempo de respuesta) drásticamente.
¿Cómo se conecta con Plesk?
Puedes usar Cloudflare, que tiene un plan gratuito muy bueno. Simplemente crea una cuenta, añade tu dominio y cambia los servidores DNS en tu registrador de dominios. Plesk te mostrará los DNS actuales en "Configuración del dominio". Es un proceso de 15 minutos y el impacto en la velocidad es brutal.
Mantenimiento Preventivo: La Clave del Éxito
No basta con hacer esto una vez. El rendimiento se degrada con el tiempo. Te recomiendo un calendario de mantenimiento:
- Semanalmente: Limpiar la caché de PrestaShop y borrar los carritos abandonados (más de 30 días).
- Mensualmente: Optimizar la base de datos (con el comando SQL anterior) y revisar los logs de errores en Plesk.
- Trimestralmente: Actualizar PrestaShop, los módulos y el tema a las últimas versiones. Las actualizaciones no solo traen funciones nuevas, sino parches de seguridad y mejoras de rendimiento.
[TIP] Desactiva los módulos que no uses. Cada módulo activo consume recursos, aunque no lo veas. Si tienes 20 módulos de "campañas de verano" que ya no usas, desinstálalos. Tu servidor te lo agradecerá.
Resumen Final y Plan de Acción
Optimizar PrestaShop Plesk es un proceso continuo, pero con estos pasos tendrás una tienda mucho más rápida y estable. No es necesario hacer todo en un día. Empieza por lo más fácil:
- Activa la caché de PrestaShop (5 minutos).
- Activa OPcache en Plesk (2 minutos).
- Comprime tus imágenes con un módulo (30 minutos).
- Configura Nginx como proxy (10 minutos).
- Limpia la base de datos (10 minutos).
- Contrata una CDN como Cloudflare (1 hora con la propagación DNS).
Si sigues estos pasos, verás una mejora notable en el tiempo de carga. Tus clientes estarán más contentos, tus ventas aumentarán y Google te posicionará mejor, ya que la velocidad de carga es un factor clave en el SEO.
¿Tienes alguna duda sobre el proceso? Déjala en los comentarios y te ayudaremos a resolverla. ¡A por esas ventas!
