Solucionado: error “upstream sent too big header” en PrestaShop

by | Sep 17, 2025 | Prestashop

upstream sent too big header
Si te dedicas a gestionar una tienda online con PrestaShop, sabes que los errores son el pan nuestro de cada día, bueno en realidad con prestashop o cualquier otra plataforma. Recientemente, y justo cuando pensaba que mi tienda PrestaShop 9 estaba funcionando a la perfección, me encontré con un problema muy específico y frustrante en una tienda nueva con PrestaShop 9, aunque no es propio de esta versión sino que puede sucederte en cualquier version de prestashop y en cualquier tipo de plataforma: el error “upstream sent too big header while reading response header from upstream”.

Al principio, puede sonar a chino, pero en términos sencillos, lo que ocurre es que tu servidor web (normalmente Nginx) está recibiendo una cabecera de respuesta HTTP de PrestaShop que es demasiado grande para procesarla. Esto suele suceder por la información que se acumula en las cookies o en la sesión de un usuario.

El caso es que tu tienda da error 502 Bad gateway, no carga el contenido, puedes tener una página en blanco sin saber qué está pasando, y si activas el modo depuración, o debug, no te dará información, porque prestashop no llega a cargar, por lo tanto, el modo debug no se ejecuta. Así que tienes que ir al servidor a ver el registro de errores, que es donde habrás encontrado la puñetera frase upstream sent too big header.

La buena noticia es que tiene una solución bastante sencilla.


 

La solución: Ajustar la configuración de Nginx

Yo empecé sospechando que este error era por algún módulo que hayas instalado, puedes hacer la prueba e ir desactivándolos uno a uno, con lo pesado que es. Pero lo que te interesa es que la tienda prestashop funcione con todos los módulos que has instalado y necesitas.

La clave para resolver este problema no está en PrestaShop, sino en el servidor web que tienes detrás. Lo que necesitamos hacer es decirle a Nginx que acepte cabeceras de mayor tamaño. Parece que a Nginx no le gustan los ‘buffets’ de datos demasiado grandes, ¿verdad?, debe estar a dieta…

A continuación te explico cómo hacerlo, tanto si tienes acceso por terminal como si usas un panel de control como Plesk. Y si no tienes acceso al servidor o no tienes ni idea de cómo hacerlo, las instrucciones que te indico más abajo son las que puedes enviar al servicio de atención al cliente de tu servidor para que las añadan ellos.

Ten en cuenta que estas mejoras también pueden hacer que tu tienda vaya un poco más rápida, con lo que

 

Opción 1: Si tienes acceso por Plesk

 

Esta es la forma más rápida y segura si tu hosting usa Plesk.

  1. Inicia sesión en tu panel de control Plesk.
  2. Navega hasta “Sitios web y dominios” y selecciona tu sitio PrestaShop.
  3. Haz clic en “Configuración de Apache y nginx”.
  4. En el recuadro de texto de “Directivas adicionales de nginx”, añade las siguientes líneas:

    Nginx

    proxy_buffers 16 16k;
    proxy_buffer_size 16k;
    proxy_busy_buffers_size 16k;
    large_client_header_buffers 4 32k;
    
  5. Haz clic en “Aceptar” para guardar y aplicar los cambios.

Plesk se encargará automáticamente de reiniciar el servidor, y el error debería desaparecer al instante.

 

Opción 2: Si usas el terminal

 

Si tienes acceso directo al servidor, puedes hacer el cambio manualmente editando el archivo de configuración de Nginx.

  1. Conéctate a tu servidor vía SSH.
  2. Abre el archivo de configuración de Nginx. La ruta puede variar, pero las más comunes son /etc/nginx/nginx.conf o el archivo específico de tu sitio en /etc/nginx/sites-available/.
  3. Dentro del bloque http o del bloque server de tu sitio, añade las mismas directivas que mencioné antes:

    Nginx

    proxy_buffers 16 16k;
    proxy_buffer_size 16k;
    proxy_busy_buffers_size 16k;
    large_client_header_buffers 4 32k;
    
  4. Guarda los cambios y reinicia Nginx para que se apliquen:

    Bash

    sudo systemctl restart nginx
    
    
    

Si tu servidor es compartido

En un servidor compartido, no podrás aplicar directamente estos parámetros de configuración de Nginx. La razón principal es que no tienes acceso a la configuración global del servidor.

Por qué no puedes hacerlo en un servidor compartido

En un entorno de hosting compartido:

  • El servidor web (Nginx) es una instancia compartida entre cientos, o incluso miles, de sitios web.
  • No tienes los permisos de superusuario (sudo) necesarios para editar archivos de configuración de Nginx como nginx.conf.
  • Un cambio en la configuración global afectaría a todos los demás clientes en el mismo servidor, lo cual no está permitido por motivos de seguridad y estabilidad.

 

¿Cuál es la solución para un servidor compartido?

La única forma de resolver el problema en este tipo de hosting es contactar al soporte técnico de tu proveedor.

  1. Explica el problema: Diles que tu tienda PrestaShop está dando el error “upstream sent too big header while reading response header from upstream”.
  2. Solicita el cambio: Pídeles que aumenten los valores de los buffers de cabecera para tu dominio. Puedes mencionarles los parámetros que hemos discutido: proxy_buffers, proxy_buffer_size, y large_client_header_buffers.

Ellos tienen las herramientas y los permisos para realizar estos ajustes de manera segura para tu cuenta, sin afectar a los otros usuarios del servidor.

Si te responden que no pueden hacer ese cambio, lo cual es poco común pero posible, la única solución sería migrar a un plan de hosting superior, como un VPS (Servidor Privado Virtual) o un plan de hosting dedicado, donde sí tendrías control total sobre la configuración del servidor. Y recuerda que siempre insisto en que la base para la estabilidad de tu web comienza con escoger un buen servidor y un buen proveedor de hosting. Es básico! Es super importante!


¿Por qué ocurre este error?

 

Aunque la solución es sencilla, es importante entender por qué sucede. En muchos casos, el problema surge de un módulo o plugin que está generando datos de sesión muy grandes, o un número excesivo de cookies. Al aumentar el tamaño de los buffers de Nginx, estás “parcheando” el problema para que no afecte a la experiencia del usuario.

En mi caso, sospecho que un módulo de reciente instalación estaba causando este comportamiento. Si el problema vuelve a aparecer, lo ideal sería investigar qué módulo lo provoca y buscar una solución más definitiva. Pero mientras tanto, con estos sencillos pasos tu tienda volverá a estar operativa en cuestión de minutos.

Espero que esta solución te ayude tanto como a mí. Mucha suerte y mucho ecommerce!

Producto y marca: claves del éxito o fracaso en e-commerce

  Si tu #ecommerce no está generando las ventas que esperabas, es posible que la combinación de producto y #marca sea el factor determinante. En el competitivo mundo del comercio electrónico, el éxito de tu negocio no solo depende de tener una tienda en línea...

read more

Cómo Hacer un Backup Web Fácilmente y Proteger tu Sitio

  Tener copias de seguridad es esencial para proteger tu sitio web. Aquí te mostraré cómo realizar un backup web fácilmente. ¡Continúa leyendo! ¿Te preguntas si tu servidor realiza copias de seguridad de tu sitio web? ¿Te sientes inseguro acerca de cómo hacerlo...

read more

Descargar otras versiones de Prestashop

  ¿No sabes dónde descargar otras versiones de prestashop? normal, prestashop ha quitado los enlaces. Pero aquí te digo dónde puedes conseguirlas. sigue leyendo Prestashop ha remodelado toda su web recientemente y, una de las consecuencias, es que ha retirado la...

read more