431 Request Header Fields Too Large (RFC 6585) significa que el servidor no está dispuesto a procesar la solicitud porque un campo de encabezado, o todos ellos en conjunto, son demasiado grandes. El cliente puede volver a intentarlo después de reducir el tamaño de los encabezados.
Las cookies suelen ser las culpables: un sitio y sus subdominios establecen cada vez más cookies hasta que el encabezado Cookie supera el límite del servidor. Las URL Referer muy largas y los tokens de autenticación grandes también pueden provocarlo. Node.js, por ejemplo, responde 431 cuando los encabezados superan su límite, algo con lo que los desarrolladores se topan a menudo en localhost, donde se acumulan las cookies de muchos proyectos locales.
No todos los servidores usan el 431. nginx, por ejemplo, devuelve en su lugar 400 Bad Request con “Request Header Or Cookie Too Large”.
Ejemplo de respuesta
HTTP/1.1 431 Request Header Fields Too Large
Connection: close SEO y verificación de redirecciones
Los rastreadores envían encabezados pequeños y sin cookies, así que casi nunca provocan un 431. Si una verificación de redirecciones devuelve 431, reduce el tamaño de los encabezados personalizados o de las cookies que hayas agregado.
Causas frecuentes y casos de uso
- Se acumularon cookies de un dominio y sus subdominios. Bórralas, o establece menos cookies y más pequeñas.
- JWT de gran tamaño u otros encabezados de autorización.
- Encabezados
Referermuy largos procedentes de URL con cadenas de consulta enormes. - Un límite bajo de tamaño de encabezados en un servidor Node.js (
--max-http-header-size), un proxy o un balanceador de carga.