Cómo acelerar PrestaShop en Plesk con caché y compresión
¿Tu tienda PrestaShop va lenta? No te preocupes, no eres el único. Una tienda online lenta es uno de los problemas más frustrantes, tanto para ti como para tus clientes. Pero la buena noticia es que tiene solución, y probablemente más fácil de lo que crees.
Si tu hosting está basado en Plesk (uno de los paneles de control más comunes), tienes a tu disposición una serie de herramientas para optimizar PrestaShop Plesk y hacer que vuele. En esta guía, paso a paso y sin tecnicismos complicados, te voy a enseñar cómo activar la caché y la compresión para acelerar PrestaShop Plesk de forma notable.
Al final de este artículo, tendrás una tienda más rápida, lo que se traduce en mejor posicionamiento SEO y, sobre todo, en más ventas. Vamos a ello.
¿Por qué es tan importante la velocidad en PrestaShop?
Antes de ponernos manos a la obra, es crucial entender por qué merece la pena dedicar tiempo a esto. La velocidad no es solo una cuestión de comodidad; es un factor decisivo para el éxito de tu negocio online.
- Experiencia de usuario (UX): Un cliente que espera más de 3 segundos para ver tu página, probablemente se irá a la competencia. La paciencia online es mínima.
- Posicionamiento SEO: Google, desde 2010, utiliza la velocidad de carga como factor de ranking. Una tienda lenta aparecerá más abajo en los resultados de búsqueda, lo que significa menos visitas orgánicas.
- Tasa de conversión: La velocidad está directamente relacionada con las ventas. Un estudio de Google indica que, por cada segundo de retraso en la carga móvil, las conversiones pueden caer hasta un 20%.
- Coste de publicidad: Si pagas por anuncios (Google Ads, Facebook Ads, etc.), una página lenta desperdicia tu presupuesto. Estás pagando por tráfico que no se convierte.
En resumen, invertir tiempo en acelerar tu tienda es invertir directamente en tu facturación. Y con las herramientas adecuadas, es un proceso sencillo.
Preparando el terreno: Diagnóstico rápido
Para optimizar PrestaShop Plesk, primero necesitamos saber qué estamos haciendo mal. No vamos a tocar nada a ciegas. Te recomiendo usar herramientas gratuitas como Google PageSpeed Insights o GTmetrix.
Simplemente introduce la URL de tu tienda y analiza los resultados. Estas herramientas te darán una puntuación y te dirán exactamente qué elementos son los que más están lastrando tu velocidad.
[TIP] No te obsesiones con conseguir un 100/100 en estas herramientas. Ese puntaje es casi imposible en una tienda real y funcional. Un objetivo realista y excelente es estar por encima de 80-85 en móvil y 90 en escritorio.
Una vez que tengas tu diagnóstico, podremos aplicar las soluciones que te presento a continuación, que son las más efectivas para un servidor Plesk.
Activar la caché de PrestaShop (El primer gran paso)
La caché es, sin duda, la mejora más significativa que puedes implementar. ¿Qué hace exactamente? Guarda una "foto" de tus páginas más visitadas. Cuando un cliente llega, el servidor le muestra esa "foto" en lugar de tener que construir la página desde cero cada vez. Esto reduce drásticamente el tiempo de carga.
### Activar la caché interna de PrestaShop
Tu tienda ya tiene un sistema de caché integrado. Vamos a configurarlo correctamente.
- Accede al Panel de Administración de tu PrestaShop.
- Ve al menú Parámetros avanzados y haz clic en Rendimiento.
- En la sección Caché, encontrarás la opción "Usar caché". Cámbiala a Sí.
- En "Cómo almacenar en caché", te recomiendo elegir "Memcached" o "APCu" si están disponibles en tu Plesk. Si no estás seguro, consulta con tu proveedor de hosting. Si no los tienes, deja la opción por defecto (File System) que también funciona bien.
- En "Caché de combinación de plantillas", activa las tres opciones: "Combinar archivos JavaScript", "Combinar archivos CSS" y "Comprimir archivos JavaScript y CSS". Esto fusionará todos los archivos de estilo y funciones en unos pocos, reduciendo las peticiones al servidor.
Guarda los cambios. Notarás una mejora inmediata.
### Activar la caché de página completa (el truco de los expertos)
La caché interna es genial, pero hay una caché aún más potente: la de página completa. Esta opción guarda el HTML final de la página y lo sirve directamente, sin ejecutar PHP ni consultar a la base de datos.
Para activarla en un entorno Plesk, la mejor opción es usar un módulo como "Page Cache" de PrestaShop o el conocido "Nginx Cache". Muchos de estos módulos se instalan directamente desde el marketplace de tu tienda.
[INFO] Algunos módulos de pago ofrecen funciones avanzadas como la exclusión de ciertas partes de la página (por ejemplo, el carrito de compra) para que la caché no muestre información desactualizada a usuarios registrados. Investiga cuál se adapta mejor a tu presupuesto y necesidades.
Comprimir y optimizar imágenes (El peso pesado)
El peso de las imágenes es una de las causas más comunes de lentitud. Si subes las fotos directamente desde tu cámara, probablemente pesen varios megabytes. Eso es demasiado.
### Configurar la compresión automática en PrestaShop
PrestaShop tiene un sistema para optimizar imágenes al vuelo, pero hay que activarlo.
- Ve a Parámetros avanzados > Rendimiento.
- Busca la sección "Optimización de imágenes".
- Activa la casilla "Usar compresión de imagen".
- En el selector, elige el nivel de compresión. "Compresión JPEG alta" es un buen equilibrio entre calidad y peso.
- También puedes activar la opción "Usar conversión de imagen webp". El formato WebP es mucho más ligero que el JPEG o PNG y es compatible con la gran mayoría de navegadores modernos.
### Compresión manual con herramientas online
Si ya tienes imágenes subidas, no hace falta que las vuelvas a subir todas. Puedes comprimirlas manualmente con herramientas online gratuitas como TinyPNG o Squoosh.
El proceso es sencillo:
- Sube la imagen a la herramienta.
- Espera a que la comprima.
- Descarga la versión optimizada.
- Sustitúyela en tu servidor a través del administrador de archivos de Plesk o del propio gestor de imágenes de PrestaShop.
[TIP] La compresión de imágenes es una tarea que deberías hacer siempre antes de subir una foto a tu tienda. Adquiere el hábito y tu velocidad de carga te lo agradecerá.
Configurar la compresión Gzip en Plesk
La compresión Gzip es otra técnica fundamental para acelerar PrestaShop Plesk. Actúa como un "winrar" para tu web. Comprime todos los archivos de texto (HTML, CSS, JavaScript) antes de enviarlos al navegador del cliente, que los descomprime instantáneamente. El resultado es una transferencia de datos mucho menor.
En Plesk, la forma más fácil de activar Gzip es a través de los archivos de configuración del servidor web (Apache o Nginx). No te asustes, es más fácil de lo que parece.
### Activando Gzip en Apache (a través de .htaccess)
Si tu servidor usa Apache, tendrás un archivo llamado .htaccess en la raíz de tu tienda.
- Accede al Administrador de Archivos en Plesk.
- Navega hasta la carpeta donde está instalado PrestaShop (normalmente
httpdocsopublic_html). - Busca el archivo
.htaccess. Si no lo ves, activa la opción de "Mostrar archivos ocultos". - Haz clic derecho sobre él y selecciona "Editar".
- Añade el siguiente código al final del archivo:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
Guarda los cambios. Para verificar que funciona, puedes usar herramientas online como GzipWTF o revisar las cabeceras de tu web en el modo desarrollador de tu navegador.
[WARNING] Antes de editar el
.htaccess, es obligatorio hacer una copia de seguridad del archivo original. Un error en este archivo puede dejar tu tienda inaccesible. Si no te sientes seguro, pide ayuda a tu soporte técnico.
### Activando Gzip en Nginx
Si tu Plesk está configurado con Nginx (o como proxy), el proceso es diferente. No editarás .htaccess, sino que tendrás que añadir una configuración en el panel de Plesk.
- Ve a tu dominio en Plesk.
- Haz clic en "Apache y nginx".
- En la sección de "Directivas adicionales de nginx", añade lo siguiente:
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_proxied any;
gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/xml application/javascript application/json image/svg+xml;
gzip_disable "MSIE [1-6]\.";
Guarda los cambios. Plesk se encargará de recargar la configuración.
Aprovechar la caché del navegador (Leverage Browser Caching)
Esta técnica le dice al navegador del visitante que guarde ciertos archivos (imágenes, CSS, JS) en su disco duro local durante un tiempo determinado. Así, cuando el usuario vuelva a tu tienda, no tendrá que descargarlos de nuevo, acelerando muchísimo la carga.
Nuevamente, esto se configura en el .htaccess para Apache. Añade este código:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType application/x-javascript "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 year"
</IfModule>
Guarda y listo. Con esto, le estás diciendo al navegador del cliente que esos archivos no cambian a menudo y que puede guardarlos en su memoria.
[INFO] Si tu tienda está en un entorno con Syspanel (antes conocido como HestiaCP), el proceso para editar la configuración del servidor web es muy similar, pero el acceso al panel se realiza a través del puerto 2106. El archivo de configuración será el mismo
.htaccesssi usas Apache.
Más allá de la caché: Buenas prácticas para optimizar PrestaShop Plesk
La caché y la compresión son la base, pero para exprimir al máximo la velocidad de tu tienda, te dejo con algunas prácticas recomendadas adicionales.
- Mantén PrestaShop actualizado: Cada versión incluye mejoras de rendimiento y seguridad. No te quedes en versiones antiguas.
- Desactiva módulos innecesarios: Cada módulo activo añade código y consultas a la base de datos. Revisa tu lista de módulos y desactiva (o mejor, desinstala) los que no uses.
- Utiliza un tema optimizado: No todos los temas son iguales. Algunos están programados de forma muy eficiente, mientras que otros son un desastre. Elige un tema ligero y bien codificado. Evita los temas "todo en uno" que cargan miles de funciones que no necesitas.
- Usa una CDN (Red de Distribución de Contenidos): Una CDN guarda copias de tus archivos estáticos (imágenes, CSS, JS) en servidores de todo el mundo. Cuando un cliente te visita, se le sirven los archivos desde el servidor más cercano a su ubicación, reduciendo la latencia. Cloudflare tiene un plan gratuito excelente.
- Optimiza tu base de datos: Con el tiempo, la base de datos acumula registros obsoletos (carritos abandonados, sesiones antiguas). Puedes usar el módulo "Optimizar base de datos" de PrestaShop o un script SQL para limpiarla periódicamente.
Preguntas Frecuentes (FAQ)
¿Puedo romper mi tienda si activo la caché?
Es poco probable, pero posible. La caché de página completa puede mostrar información desactualizada si no está bien configurada. La caché de combinación de archivos CSS/JS puede dar problemas si tu tema o módulos no son compatibles. Por eso es crucial hacer una copia de seguridad antes de hacer cambios. Si algo sale mal, puedes desactivar la caché desde el panel de administración o borrando los archivos de caché manualmente.
¿Qué es mejor, Memcached o APCu?
Ambos son sistemas de caché en memoria, mucho más rápidos que la caché de archivos. APCu es ideal para un solo servidor, ya que almacena la caché en la memoria del propio servidor. Memcached es más complejo y se usa en entornos con varios servidores. Para la mayoría de las tiendas en un plan de hosting estándar, APCu es más que suficiente y más fácil de configurar.
Mi hosting usa Syspanel (antes HestiaCP), ¿qué cambia?
El panel de control es diferente, pero la lógica es la misma. La configuración de caché de PrestaShop es interna, así que no cambia. Para la compresión Gzip y la caché del navegador, tendrás que acceder a los archivos de configuración de Apache/Nginx. La principal diferencia es que para entrar al panel de Syspanel, tendrás que usar el puerto 2106 (por ejemplo, https://tu-servidor:2106). El archivo .htaccess para Apache funciona de la misma manera.
¿Cuánto tiempo debo poner en la caché del navegador?
Para archivos que no cambian (imágenes, logos, iconos), un año es perfecto. Para CSS y JavaScript, un mes es un buen equilibrio. Si cambias a menudo el diseño, puedes reducirlo a una semana o incluso un día. La clave es que, al cambiar un archivo, su nombre también cambie (por ejemplo, estilos_v2.css), para que el navegador lo descargue de nuevo.
Después de hacer todo esto, ¿cuánta mejora notaré?
La mejora puede ser espectacular. Es común reducir el tiempo de carga de 5-6 segundos a 2 segundos o menos si tu servidor es decente. La puntuación en PageSpeed Insights puede subir de 30-40 puntos a 80-90. El impacto en tu negocio será notable.
Conclusión: Tu tienda merece ser rápida
Optimizar PrestaShop Plesk no es un lujo, es una necesidad. Con los pasos que has aprendido hoy, activando la caché, comprimiendo imágenes y configurando la compresión Gzip, habrás dado un salto de gigante en la velocidad de tu tienda.
No es necesario que hagas todo a la vez. Empieza por lo más fácil: activa la caché interna de PrestaShop y comprime las imágenes. Verás una mejora inmediata. Luego, si te atreves, configura Gzip y la caché del navegador. Con cada paso, tu tienda será más rápida, tus clientes estarán más contentos y tus ventas lo notarán.
¡Ponte manos a la obra y haz que tu tienda vuele!
