431 Request Header Fields Too Large

Die Header sind zu groß.

Wann du ihn verwendest

Übergroße Cookies sind meist der Grund.

Häufige Ursachen und Lösungen

Die Header sind zu groß, und fast immer sind Cookies schuld: Berge von Tracking-Cookies, eine clientseitig gespeicherte Session oder ein JWT mit vielen Claims in einem Cookie. Auf localhost sammeln sich Cookies aller Apps an, die du je gestartet hast, weil Cookies den Port ignorieren. Die Cookies der Website zu löschen, behebt das meist sofort, was zugleich die Diagnose bestätigt.

Node.js gibt 431 zurück, wenn Header 16 KB überschreiten, was oft Dev-Server wie Vite und Next.js trifft; --max-http-header-size hebt das Limit an. nginx und Apache beantworten dasselbe Problem stattdessen mit 400. Die eigentliche Lösung sind kleinere Header: Speichere nur eine Session-ID im Cookie, schränke Cookies mit engen Path- und Domain-Werten ein und lösche veraltete.

Client-Fehler (4xx)

4xx-Codes sind Client-Fehler: Die Anfrage selbst ist fehlerhaft, nicht autorisiert oder verweist auf etwas, das es nicht gibt. Dieselbe Anfrage erneut zu senden hilft nicht.

So sieht es aus

HTTP/1.1 431 Request Header Fields Too Large

So sendest du ihn

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

So prüfst du ihn

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

HTTP-Statuscodes öffnen