Solucionado: error «upstream sent too big header» en PrestaShop

por | 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!

Rating: 5.0/5. From 3 votes.
Please wait...

No template found for /themes/classic/category.tpl

  Puede que tu tienda esté funcionando sin problema y, de repente, tus categorías den error 500 o muestren No template found for /themes/classic/category.tpl. Te explico cómo solucionarlo Si vienes de haber actualizado un prestashop de 1.6 a 1.7, no siempre, pero...

leer más

[Resuelto] Collation unknow: ‘utf8mb4_0900_ai_ci’

  Si estás importando el contenido de una base de datos, es posible que te haya aparecido el error #1273 - Collation unknow: 'utf8mb4_0900_ai_ci'. Te explico cómo solucionarlo, es muy fácil y rápido Collation unknow: 'utf8mb4_0900_ai_ci' Es muy posible que hayas...

leer más

Cómo añadir nuevo usuario en Google Search Console

Si quieres saber cómo añadir nuevo usuario en google search console porque tienes que agregar un colaborador, a veces puede ser poco intuitivo. Te explico cómo hacerlo fácil y rápido Como ya sabes, Google Search Console es un servicio gratuito de Google que te ayuda a...

leer más

Centro de preferencias de privacidad

Necesarias

Se usan para saber si ya aceptaste nuestras políticas, si ya estás suscrito a nuestra newsletter, para reconocer el estado de tu sesión si la tuvieses y para servir más rápidos los contenidos.

No se captura IPs ni siquiera para el servicio de Analytics así que tu visita es privada.

JSESSIONID, _cfuid, wpSGCachePypass, mailerlite, gdpr, gawp

Translate »