Guía para optimizar la velocidad de PrestaShop en cPanel (sin plugins)
¿Tu tienda PrestaShop va lenta y no quieres instalar más plugins que compliquen el sistema?
No te preocupes, es un problema muy común. La buena noticia es que puedes optimizar PrestaShop en cPanel de forma efectiva sin necesidad de módulos adicionales. De hecho, muchas veces los plugins son parte del problema, ya que consumen recursos y generan consultas extra a la base de datos.
En esta guía extensa y práctica, voy a explicarte, paso a paso y sin tecnicismos innecesarios, cómo acelerar PrestaShop desde el propio panel de control de tu hosting (cPanel) y desde la configuración interna de la tienda. Olvídate de contratar planes caros o de llamar al soporte a cada rato. Aquí aprenderás a hacerlo tú mismo.
Vamos a ello.
Antes de Empezar: Entendiendo por qué tu PrestaShop es Lento
Para arreglar un problema, primero hay que entenderlo. Un PrestaShop lento en cPanel puede deberse a varias razones, pero las más habituales son:
- Configuración PHP incorrecta: Límites de memoria muy bajos o ejecución lenta del código.
- Caché desactivada: PrestaShop genera las páginas dinámicamente cada vez que un usuario entra. Sin caché, el servidor trabaja el doble.
- Base de datos saturada: Registros antiguos, carritos abandonados y tablas fragmentadas que pesan toneladas.
- Imágenes sin optimizar: Fotos en tamaño original de 5 MB que se cargan directamente en la web.
- Archivos residuales: Módulos desinstalados que dejan basura en el servidor.
Vamos a atacar cada uno de estos puntos directamente desde cPanel y el panel de administración de PrestaShop.
Paso 1: Optimizar la Configuración de PHP en cPanel (La Base de Todo)
Esta es la primera piedra angular para optimizar PrestaShop en cPanel. Si tu versión de PHP es antigua o los límites son bajos, el rendimiento se desploma.
### Cambiar la versión de PHP
Las versiones antiguas (como PHP 5.6 o 7.0) son lentas y tienen problemas de seguridad. Necesitas al menos PHP 7.4 o superior (idealmente PHP 8.x).
- Entra a tu cPanel (normalmente es
tudominio.com/cpanel). - Busca la sección "Software" o "Motor de Selección de PHP" (a veces se llama "MultiPHP Manager").
- Selecciona tu dominio (si tienes varios) y elige la versión PHP 8.1 o 8.2 en el desplegable.
- Haz clic en "Aplicar" o "Guardar".
[WARNING] Antes de cambiar la versión de PHP, asegúrate de que tus módulos de PrestaShop sean compatibles. Si usas versiones muy antiguas de la tienda (1.6 o inferior), PHP 8.0 te dará errores. En ese caso, usa PHP 7.4.
### Ajustar los límites de memoria y ejecución
Una vez que tienes la versión correcta, debes subir los límites. Esto es crucial para evitar errores de "memoria agotada" y para que los procesos pesados (como generar el caché) no fallen.
- En la misma sección de PHP, busca el enlace que dice "Opciones de PHP" o "Configuración".
- Localiza los siguientes parámetros y cámbialos a estos valores recomendados:
memory_limit: 512M (o al menos 256M).max_execution_time: 300 (segundos).max_input_vars: 5000 (muy importante para guardar productos con muchas combinaciones).upload_max_filesize: 64M.post_max_size: 128M.
- Guarda los cambios.
[TIP] Si no encuentras estas opciones, contacta con tu proveedor de hosting. En la mayoría de los casos, si tienes un plan decente, podrás ajustarlas desde cPanel.
Paso 2: Activar y Configurar la Caché Interna de PrestaShop
La caché es el "secreto" para acelerar PrestaShop sin plugins. Básicamente, lo que hace es guardar una copia estática de tus páginas para no tener que generarlas desde cero en cada visita.
- Entra al Panel de Administración de tu tienda (la URL que termina en
/admino la que configuraste). - Ve al menú "Parámetros Avanzados" y luego a "Rendimiento".
- Aquí verás varias opciones clave. Cámbialas así:
### Activar la caché de Smarty
Esta es la caché de plantillas. Es la más fácil de activar y da resultados inmediatos.
- En la sección "Caché de plantillas", selecciona "Sí, usar caché para las plantillas".
- En "Combinar, comprimir y cachear", activa las opciones de "Cachear" y "Comprimir" para CSS y JavaScript. Esto hará que tu web pese menos y cargue más rápido en el navegador del cliente.
[INFO] Activar la compresión de CSS y JS reduce el número de peticiones HTTP. Tu tienda pasará de cargar 20 archivos a cargar solo 2 o 3, lo que acelera enormemente la velocidad de carga percibida.
### Activar la caché de consultas a la base de datos
Esta opción guarda las consultas SQL más frecuentes para no repetirlas constantemente.
- En la sección "Caché de base de datos", cambia el "Tipo de caché" a "Sistema de archivos" (File System). No uses "Memcached" a menos que sepas que tu hosting lo tiene activado, ya que puede dar errores.
[WARNING] Si tu tienda es muy grande (miles de productos), la caché de base de datos puede llenar el servidor. Si notas que el disco se llena, vuelve a poner "Sin caché" y prioriza solo la caché de Smarty.
Paso 3: Optimizar las Imágenes (Clave para el SEO y la Velocidad)
Las imágenes son el 80% del peso de una página web. Si no las optimizas, todo lo demás será en vano. PrestaShop tiene herramientas internas para esto.
### Reducir el tamaño de las imágenes existentes
- En el panel de administración, ve a "Diseño" > "Temas" > "Configuración avanzada" (o "Ajustes de imagen").
- Verás una lista de formatos de imagen (como "Categoría por defecto", "Producto por defecto", etc.).
- Haz clic en el botón "Redimensionar" (o "Regenerar") para que PrestaShop reemplace las imágenes actuales por versiones más pequeñas y optimizadas.
[TIP] Te recomiendo que primero hagas una copia de seguridad de la carpeta
/imgantes de regenerar las imágenes, por si acaso.
### Activar la compresión WebP o JPEG
En la misma pantalla de "Configuración avanzada", busca la opción de "Formato de imagen". Si tu versión de PrestaShop lo permite, activa WebP. Este formato es mucho más ligero que el JPEG o PNG.
Si no tienes esa opción, al menos asegúrate de que el "Calidad de imagen" esté en 85% (no en 100%). La diferencia de calidad es imperceptible, pero el peso del archivo se reduce a la mitad.
Paso 4: Limpieza Profunda de la Base de Datos en cPanel
Aquí es donde realmente se nota la diferencia en rendimiento PrestaShop. Con el tiempo, la base de datos se llena de basura. Vamos a limpiarla directamente con phpMyAdmin (que está en cPanel).
- Ve a tu cPanel y busca el icono de "phpMyAdmin" (dentro de la sección "Bases de datos").
- Selecciona la base de datos de tu tienda (la encontrarás en el archivo
config/settings.inc.phpde tu PrestaShop, pero normalmente empieza por el prefijo que pusiste al instalar, ej:tuweb_). - Haz clic en la pestaña "SQL" (o "Consultas") en la parte superior.
Ahora, ejecuta estos comandos SQL uno por uno (cópialos y pégalos, y haz clic en "Continuar"):
### Limpiar carritos abandonados y antiguos
Esto libera mucho espacio y acelera las consultas de sesión.
DELETE FROM ps_cart WHERE date_upd < DATE_SUB(NOW(), INTERVAL 30 DAY);
### Limpiar sesiones caducadas
Las sesiones se acumulan y ralentizan la web.
DELETE FROM ps_connections WHERE date_add < DATE_SUB(NOW(), INTERVAL 60 DAY);
DELETE FROM ps_connections_page WHERE time_start < DATE_SUB(NOW(), INTERVAL 60 DAY);
DELETE FROM ps_guest WHERE date_add < DATE_SUB(NOW(), INTERVAL 60 DAY);
### Eliminar mensajes de error y logs antiguos
Los logs de errores ocupan espacio y no sirven para nada.
TRUNCATE TABLE ps_log;
[WARNING] MUY IMPORTANTE: El prefijo
ps_puede variar. Si tu instalación usa otro prefijo (por ejemploshop_), cámbialo en los comandos. Si no estás seguro, revisa el archivoconfig/settings.inc.phpde tu tienda. No ejecutes estos comandos si no sabes lo que haces, o podrías perder datos. Siempre es mejor hacer una copia de seguridad de la BD antes.
Paso 5: Optimizar el Archivo .htaccess (Configuración Manual)
El archivo .htaccess es el "directorio de tráfico" de tu web. Puedes añadir reglas para que el servidor comprima los archivos y los envíe más rápido.
- En tu cPanel, ve al "Administrador de archivos".
- Entra en la carpeta
public_html(o la carpeta donde está instalada tu tienda). - Busca el archivo
.htaccess. Si no lo ves, activa la opción "Mostrar archivos ocultos" en la esquina superior derecha. - Haz clic derecho sobre él y selecciona "Editar".
Añade este código al final del archivo:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript
</IfModule>
<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 text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
</IfModule>
Este código hace dos cosas:
- Comprime los archivos de texto (HTML, CSS, JS) antes de enviarlos al navegador. Reduce el peso hasta un 70%.
- Guarda en caché las imágenes y estilos en el navegador del usuario. Así, cuando vuelva a visitar tu tienda, no tendrá que descargarlos de nuevo.
[TIP] Si tu hosting usa LiteSpeed (muy común en cPanel), este código también funciona, pero puede que necesites el módulo
mod_litespeeden lugar demod_deflate. Si no funciona, pide a tu soporte que active la compresión Litespeed.
Paso 6: Desactivar Módulos Innecesarios y Limpiar Archivos
Muchas veces, la lentitud se debe a módulos que no usas pero que están "activos". PrestaShop los carga en cada página, aunque no se vean.
### Desactivar módulos no utilizados
- Ve a "Módulos" > "Módulos y Servicios".
- En la pestaña "Módulos instalados", revisa la lista y desactiva todo lo que no uses.
- Presta especial atención a los "Bloques de análisis", "Bloques de redes sociales" o cualquier módulo de terceros que no reconozcas.
[WARNING] No desactives módulos que hacen funciones críticas (como el de pago o el de envío) o romperás la tienda. Desactiva solo lo que claramente es decorativo o de análisis que no usas.
### Eliminar archivos basura del servidor
- En el Administrador de archivos de cPanel, navega a
public_html/var/cache(opublic_html/cacheen versiones antiguas). - Borra todo el contenido de esa carpeta. No te preocupes, se regenerará automáticamente.
- También puedes vaciar la carpeta
public_html/themes/tu-tema/cachesi existe.
Paso 7: Activar la Compresión de Archivos en cPanel (Alternativa)
Si el paso 5 te resultó complicado, hay una forma más visual de hacerlo desde cPanel.
- Busca la sección "Optimizar sitio web" (a veces se llama "Optimize Website" o "Optimización de ancho de banda").
- Selecciona tu dominio y haz clic en "Comprimir todo" (o "Compress all").
- Guarda los cambios.
Esto activa la compresión GZIP a nivel de servidor, lo que consigue el mismo efecto que el código del paso anterior, pero sin tocar archivos.
Paso 8: Activar el Modo "No Mantenimiento" y Desactivar el Modo Depurador
A veces, dejamos activado el modo de depuración (debug) después de hacer cambios. Esto consume muchísimos recursos porque registra cada paso del código.
- Ve a "Parámetros Avanzados" > "Información" o "Rendimiento".
- Busca la opción "Modo de depuración" y asegúrate de que esté en "Desactivado" o "Nunca".
- También busca la opción "Forzar compilación" y ponla en "Nunca". Si está en "Sí", la tienda está recompilando las plantillas en cada visita, lo cual es lentísimo.
Resumen Final: Tu Checklist para un PrestaShop Rápido
Hemos cubierto mucho. Aquí tienes una lista rápida para que no se te olvide nada:
- PHP 8.1+ activado en cPanel.
- Límite de memoria subido a 512M.
- Caché Smarty activada en Parámetros Avanzados > Rendimiento.
- Compresión CSS/JS activada.
- Caché de base de datos en "Sistema de archivos".
- Imágenes regeneradas y comprimidas al 85%.
- Base de datos limpiada con los comandos SQL.
- .htaccess con compresión y caché de navegador.
- Módulos innecesarios desactivados.
- Caché de Smarty limpiada (borrando la carpeta
var/cache). - Modo depurador desactivado.
Preguntas Frecuentes (FAQ)
¿Cuánto tiempo tarda en notarse la mejora?
Inmediatamente. En cuanto activas la caché y comprimes las imágenes, la siguiente carga ya es más rápida. La limpieza de la base de datos y el ajuste del PHP se notan en las primeras horas.
¿Esto es mejor que instalar un plugin de caché?
No necesariamente. Los plugins de caché como "PrestaShop Cache" o los de terceros son muy útiles, pero esta guía te da el control total sin depender de código externo. Además, evitas conflictos entre módulos. Si tu tienda es pequeña o mediana, lo que hemos hecho aquí es más que suficiente.
¿Puedo romper mi tienda con estos cambios?
Si sigues los pasos al pie de la letra, es difícil. Los únicos pasos con riesgo son los de la base de datos. Por eso te recomiendo hacer una **copia de
