431 Request Header Fields Too Large

Os cabeçalhos são grandes demais.

Quando usar

Cookies grandes demais costumam ser os culpados.

Causas comuns e soluções

Os cabeçalhos são grandes demais, e os cookies quase sempre são a causa: pilhas de cookies de rastreamento, uma sessão armazenada no cliente ou um JWT com muitas claims guardado em um cookie. No localhost, os cookies de todas as aplicações que você já rodou se acumulam, porque cookies ignoram a porta. Limpar os cookies do site geralmente resolve na hora, o que também confirma o diagnóstico.

O Node.js retorna 431 quando os cabeçalhos passam de 16 KB, o que costuma pegar servidores de desenvolvimento como Vite e Next.js; --max-http-header-size aumenta o limite. O nginx e o Apache respondem ao mesmo problema com 400. A solução real são cabeçalhos menores: mantenha só um ID de sessão no cookie, restrinja os cookies com valores de Path e Domain específicos e apague os antigos.

Erro do cliente (4xx)

Os códigos 4xx são erros do cliente: a própria requisição está errada, não está autorizada ou aponta para algo que não existe. Repetir a mesma requisição não vai adiantar.

Como fica

HTTP/1.1 431 Request Header Fields Too Large

Como enviar

Node.js / Expressres.status(431).end()
Python / Flaskreturn '', 431
nginxreturn 431;

Como verificar

curl -s -o /dev/null -w "%{http_code}\n" https://example.com/

Abrir Códigos de status HTTP