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 LargeSo sendest du ihn
| Node.js / Express | res.status(431).end() |
|---|---|
| Python / Flask | return '', 431 |
| nginx | return 431; |
So prüfst du ihn
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/