Preguntas

Error 431 – Campos de cabecera demasiado grandes (Request Header Fields Too Large) Imprimir

  • 0

El error 431 aparece cuando el servidor rechaza una solicitud porque uno o varios encabezados HTTP (headers) enviados por el cliente son demasiado grandes o exceden los límites permitidos.

Esto puede deberse a:

  • Cabeceras individuales demasiado extensas

  • Conjuntos de cabeceras que en total superan el tamaño máximo

  • Cookies gigantes

  • Tokens o datos innecesarios enviados en headers

El servidor básicamente dice:
“No puedo procesar tu petición. Tus cabeceras son demasiado grandes.”


 Causas más comunes

  •  Cookies demasiado grandes o corruptas (muy típico).

  •  Tokens JWT excesivamente largos enviados en Authorization.

  •  Headers repetidos generados por errores de código.

  •  Datos que deberían enviarse en el body, pero se envían como headers.

  •  Aplicaciones SPA que guardan demasiada información en cookies.

  •  Límites muy estrictos en Nginx o Apache.

  •  Bots o herramientas enviando cabeceras mal formadas o gigantes.


 Soluciones recomendadas

1) Eliminar cookies innecesarias o limpiar caché

El problema más común es una cookie inflada, corrupta o demasiado larga.

En el navegador:

  • Borrar cookies del sitio

  • Limpiar cache

  • Reiniciar sesión


2) Reducir tamaño de tokens o moverlos a otro lugar

Ejemplos:

  • JWT de más de 8 KB → demasiado grande

  • Tokens enviados en cada request cuando no es necesario

Solución:

  • Guardar tokens cortos

  • Usar almacenamiento de sesión o local storage

  • Enviar tokens solo cuando aplique


3) Revisar headers enviados por tu aplicación

Evitar:

  • Enviar JSON codificado en base64 dentro de headers

  • Enviar configuraciones o datos grandes en X-Custom-*

  • Duplicar headers por errores en funciones o librerías


4) Aumentar los límites en Nginx

En nginx.conf:

 
large_client_header_buffers 4 16k;

o más:

 
large_client_header_buffers 4 32k;

5) Aumentar límites en Apache

En .htaccess o apache2.conf:

 
LimitRequestFieldSize 16384 LimitRequestFields 100

6) Verificar proxys y CDN

Servicios como Cloudflare o HAProxy pueden rechazar headers grandes antes de llegar al servidor real.

Solución:

  • Reducir cookies

  • Usar tokens más pequeños

  • Configurar reglas de seguridad


7) Revisar aplicaciones SPA o frameworks (React, Angular, Vue)

Estas aplicaciones pueden generar tokens grandes o cookies con datos sensibles.

Evitar:

 Guardar toda la sesión en cookies
 Enviar estados gigantes en cada request
 Usar tokens no comprimidos


 Consejo Pro

Para evitar el error 431:

  • Mantén cookies < 4 KB

  • Mantén JWT o tokens compactos

  • No guardes datos innecesarios en headers

  • Limpia cookies y renueva tokens al detectar este error

  • Aumenta límites solo si es estrictamente necesario

 

El tamaño típico recomendado para headers es entre 4 KB y 16 KB por petición.


¿Fue útil la respuesta?
Volver