🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Optimizar rendimiento de PrestaShop en servidores Linux

Actualizado el 10 de junio de 2026

¿Tu tienda PrestaShop va lenta? No te preocupes, no eres el único. Es uno de los problemas más comunes cuando empiezas a tener tráfico o muchos productos. La buena noticia es que optimizar PrestaShop en Linux es un proceso muy gratificante y, con los pasos adecuados, puedes lograr que vuele sin necesidad de ser un experto en sistemas.

En esta guía completa, vamos a desglosar todas las técnicas clave para mejorar el rendimiento PrestaShop en tu servidor Linux. Hablaremos de configuraciones de PHP, la importancia del caché PrestaShop, ajustes del servidor web y trucos de base de datos. Todo explicado de forma sencilla y práctica.


¿Por qué optimizar PrestaShop en Linux?

PrestaShop es un CMS potente, pero consume bastantes recursos. Un servidor mal configurado puede hacer que las páginas tarden 5, 10 o más segundos en cargar. Eso no solo espanta a tus clientes (que se irán a la competencia), sino que también perjudica tu posicionamiento en Google.

Linux, por su parte, ofrece un control total sobre el entorno. A diferencia de un hosting compartido, aquí puedes ajustar cada parámetro para que tu tienda funcione como un reloj.


1. Configuración básica del servidor Linux (PHP y MySQL)

### Ajustar PHP para PrestaShop

PrestaShop está escrito en PHP, así que aquí empieza la magia. El primer paso es asegurarte de tener una versión moderna de PHP (7.4 o superior, aunque 8.x ya es estable y más rápido).

Pasos clave:

  1. Aumenta el límite de memoria PHP (memory_limit). PrestaShop necesita al menos 128 MB, pero para tiendas medianas recomiendo 256 MB o 512 MB.

    • Encuentra tu archivo php.ini (suele estar en /etc/php/8.x/cli/php.ini o /etc/php/8.x/apache2/php.ini).
    • Busca memory_limit y cámbialo a memory_limit = 256M.
    • Guarda y reinicia el servicio web (Apache o Nginx).
  2. Aumenta el tiempo máximo de ejecución (max_execution_time). Para procesos como la importación de productos, ponlo en 300 segundos (5 minutos).

    • Busca max_execution_time = 300.
  3. Habilita opcache. Esta es una de las mejores optimizaciones. Opcache guarda en memoria el código PHP compilado, evitando que se tenga que leer e interpretar cada vez.

    • En php.ini, asegúrate de tener:
      opcache.enable=1
      opcache.memory_consumption=128
      opcache.interned_strings_buffer=16
      opcache.max_accelerated_files=10000
      opcache.revalidate_freq=120
      
    • Esto permitirá que tu caché de scripts funcione de maravilla.

[TIP] Si usas un panel como Syspanel (accesible por puerto 2106), puedes editar estos valores desde la interfaz de administración de PHP, sin tocar archivos manualmente.

### Optimizar MySQL/MariaDB

La base de datos es el cuello de botella más común. PrestaShop realiza muchas consultas, y si no están optimizadas, el servidor se ralentiza.

Ajustes recomendados en /etc/mysql/my.cnf o /etc/mysql/mariadb.conf.d/50-server.cnf:

[mysqld]
max_connections = 150
query_cache_type = 1
query_cache_size = 128M
tmp_table_size = 64M
max_heap_table_size = 64M
innodb_buffer_pool_size = 1G   # Ajusta según tu RAM (50-70% de la RAM total)
innodb_log_file_size = 256M
  • innodb_buffer_pool_size es el más importante: guarda en memoria las tablas y datos más usados.
  • query_cache ayuda a respuestas repetitivas, aunque en versiones modernas de MySQL 8 ya no se usa (mejor confía en el caché de PrestaShop).

[WARNING] No copies valores de memoria si tu servidor tiene poca RAM. Si tienes 2 GB de RAM, pon innodb_buffer_pool_size = 512M. Si te pasas, el sistema se quedará sin memoria y empezará a usar swap (disco), que es muy lento.


2. Caché en PrestaShop: el secreto mejor guardado

Aquí llegamos al corazón de la optimización. El caché PrestaShop es la herramienta que más impacto tiene en la velocidad. Básicamente, guarda versiones estáticas de tus páginas para que no tengan que generarse desde cero cada vez.

### Activar el caché interno de PrestaShop

  1. Ve a tu panel de administración de PrestaShop.
  2. Navega a Parámetros Avanzados > Rendimiento.
  3. En Caché, selecciona .
  4. Elige Sistema de archivos o Memcached (si tienes instalado Memcached en tu servidor). Para la mayoría, Sistema de archivos funciona bien.

### Activar la compresión CSS y JavaScript

En la misma página de Rendimiento:

  • Activa Combinar, comprimir y almacenar en caché los archivos CSS.
  • Activa Comprimir y almacenar en caché los archivos JavaScript.
  • Marca Mover JavaScript al final para que el contenido visual cargue primero.

Esto reducirá el número de peticiones HTTP y el peso de los archivos.

[INFO] Después de activar estas opciones, tu tienda se verá más rápida, pero si haces cambios en los temas, deberás limpiar la caché desde el panel (Parámetros Avanzados > Rendimiento > Forzar compilación).

### Usar un sistema de caché externo: Varnish o Redis

Si tu servidor lo permite, instalar Varnish (caché de páginas) o Redis (caché de sesiones y consultas) es un salto enorme.

  • Varnish se coloca delante de Apache/Nginx y sirve páginas completas desde la memoria RAM. Es ideal para tiendas con mucho tráfico.
  • Redis almacena sesiones y resultados de consultas, reduciendo la carga en la base de datos.

Para instalar Redis en Linux (Debian/Ubuntu):

sudo apt install redis-server
sudo systemctl enable redis

Luego, en PrestaShop, instala un módulo como "Redis Cache" o configura manualmente los parámetros de conexión.


3. Configuración del servidor web (Apache vs Nginx)

### Apache con mod_pagespeed

Si usas Apache (el más común en paneles como Syspanel), activa el módulo mod_pagespeed. Este módulo optimiza automáticamente imágenes, minifica CSS/JS y aplica compresión.

Para activarlo:

sudo a2enmod pagespeed
sudo systemctl restart apache2

También puedes ajustar el archivo de configuración de tu VirtualHost para incluir reglas específicas.

### Nginx con FastCGI Cache

Si eres más técnico y usas Nginx, la caché FastCGI es brutal. Básicamente, Nginx guarda las respuestas de PHP en disco o memoria y las sirve directamente.

Ejemplo de configuración en tu archivo de sitio:

fastcgi_cache_path /etc/nginx/cache levels=1:2 keys_zone=prestashop:100m inactive=60m;
server {
    ...
    location ~ \.php$ {
        fastcgi_cache prestashop;
        fastcgi_cache_valid 200 60m;
        fastcgi_cache_use_stale error timeout updating;
        ...
    }
}

[WARNING] Con Nginx, asegúrate de no cachear páginas de carrito, login o checkout, porque mostrarían datos de otros usuarios. Puedes usar reglas fastcgi_cache_bypass para esas URLs.


4. Optimización de imágenes y contenido multimedia

Las imágenes son el principal lastre en velocidad. PrestaShop no tiene un optimizador nativo potente, así que debes hacerlo manualmente.

Pasos prácticos:

  1. Usa herramientas externas como TinyPNG o ImageOptim para comprimir todas tus imágenes de productos antes de subirlas.
  2. Activa WebP si tu servidor lo soporta. Puedes usar un módulo gratuito como "PrestaShop WebP".
  3. Define tamaños de imagen correctos en el panel de PrestaShop (Diseño > Tamaños de imagen). No generes imágenes gigantes si solo las usas en miniaturas.

[TIP] Si tienes muchas imágenes, programa un script en PHP que las convierta a WebP automáticamente usando la librería GD o Imagick.


5. Mantenimiento de la base de datos

Con el tiempo, la base de datos de PrestaShop acumula registros innecesarios (cachés de búsquedas, sesiones antiguas, carritos abandonados). Esto la ralentiza.

Tareas periódicas:

  • Limpia las tablas usando el módulo "Database Cleaner" o ejecutando consultas manuales:
    TRUNCATE TABLE ps_connections;
    TRUNCATE TABLE ps_connections_page;
    TRUNCATE TABLE ps_guest;
    TRUNCATE TABLE ps_statssearch;
    
  • Optimiza las tablas desde phpMyAdmin o con:
    OPTIMIZE TABLE ps_product, ps_category, ps_stock_available;
    

[INFO] Haz esto una vez al mes. No te olvides de hacer una copia de seguridad antes.


6. Uso de una CDN (Red de Distribución de Contenido)

Una CDN almacena tus archivos estáticos (imágenes, CSS, JS) en servidores repartidos por todo el mundo. Cuando un usuario visita tu tienda, los archivos se sirven desde el servidor más cercano, reduciendo la latencia.

Cómo integrarlo en PrestaShop:

  1. Instala un módulo como "Cloudflare" o "CDN PrestaShop".
  2. Configura tu dominio para que apunte a la CDN (por ejemplo, Cloudflare).
  3. En PrestaShop, ve a Parámetros Avanzados > Rendimiento > CDN y activa la opción.

[WARNING] Si usas HTTPS, asegúrate de que la CDN lo soporte y de que no haya conflictos con el certificado SSL.


7. Preguntas Frecuentes (FAQ)

### ¿Cómo sé si mi servidor Linux es el problema?

Puedes usar herramientas como htop para ver el uso de CPU y RAM, o iostat para medir el disco. Si ves que el disco está al 100% de uso (I/O wait), probablemente necesitas una base de datos más rápida o más caché.

### ¿Puedo optimizar PrestaShop sin acceso root?

Sí, muchas configuraciones se pueden hacer desde el panel de administración de PrestaShop (caché, compresión) o desde el panel de hosting (Syspanel, puerto 2106). Pero para cambios profundos como PHP o MySQL, necesitarás permisos de administrador del servidor.

### ¿Qué es mejor para PrestaShop: Apache o Nginx?

Nginx es generalmente más rápido en servir archivos estáticos y manejar muchas conexiones simultáneas. Apache es más fácil de configurar para principiantes. Si tu tienda tiene mucho tráfico, Nginx con PHP-FPM es la opción ganadora.

### ¿El caché PrestaShop afecta a las actualizaciones de productos?

Sí, por eso debes limpiar la caché después de modificar precios, stocks o descripciones. En el panel de PrestaShop, ve a Parámetros Avanzados > Rendimiento y haz clic en "Limpiar caché".

### ¿Necesito un servidor dedicado para optimizar?

No necesariamente. Un VPS bien configurado (2-4 GB de RAM) puede manejar una tienda con miles de productos. Lo importante es aplicar todas las técnicas de esta guía.


Conclusión

Optimizar el rendimiento de PrestaShop en un servidor Linux no es magia, es cuestión de seguir una serie de pasos lógicos: ajustar PHP, activar el caché PrestaShop, configurar bien la base de datos y usar herramientas como CDN o Varnish. Cada pequeño cambio suma.

Empieza por lo básico: activa el caché interno, comprime CSS/JS y optimiza imágenes. Luego, si ves que necesitas más velocidad, pasa a ajustes del servidor como la memoria de MySQL o el uso de Redis.

Recuerda que el objetivo es que tus clientes tengan una experiencia fluida y que Google te recompense con mejores posiciones. ¡Manos a la obra y a vender más rápido!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel