431
Request Header Fields Too Large
Allmän förklaring av statuskoden 431
HTTP-statuskoden 431 Request Header Fields Too Large signalerar att begäran från en klient har avvisats av servern på grund av att rubrikfälten i begäran är för stora. Detta kan hända om begäran innehåller en ovanligt stor mängd data i rubrikerna, till exempel på grund av överlånga cookies, autentiseringstoken eller andra metadata. Servern kan vanligtvis inte bearbeta denna mängd data eftersom den överskrider de gränser som den har definierat. Felet hör till kategorin klientfel (400-499), vilket innebär att klienten måste anpassa begäran innan den kan skicka den vidare. En möjlig lösning är att minska storleken på header-data, till exempel genom att ta bort onödiga cookies eller komprimera data. För utvecklare och administratörer är denna statuskod en bra indikation på att antingen förfrågningarna bör optimeras eller att serverkonfigurationen bör justeras för att undvika onödiga blockeringar. Även om felet ligger på klientsidan kan det ändå orsaka betydande störningar i kommunikationen mellan klient och server.
Specifikation av HTTP-statuskoden 431
Statuskoden 431 Request Header Fields Too Large anger att servern inte vill behandla begäran eftersom dess rubrikfält är för stora. Begäran KAN skickas in på nytt efter att ha minskat storleken på huvudfälten för begäran.
Den kan användas både när mängden huvudfält för begäran totalt sett är för stor och när ett enskilt huvudfält är felet. I det senare fallet SKA svarsrepresentationen ange vilket rubrikfält som var för stort.
Till exempel:
HTTP/1.1 431 Request Header Fields Too Large Request Header Fields Too Large
Content-Type: text/html
Svar med statuskoden 431 Request Header Fields Too Large FÅR INTE lagras av en cache.
Källa / Citat från: HTTP-statuskoden 431 Request Header Fields Too Large anges i avsnitt 5 i RFC6585.
HTTP-protokoll
Hur skickar man en 431-statuskod med PHP?
För att kasta HTTP-statuskoden 431 på en webbsida kan PHP-funktionen http_response_code användas. Syntaxen är följande: http_response_code(431) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Testa HTTP-statuskoden 431
För att kunna visa HTTP-statuskoden (i det här fallet 431 Request Header Fields Too Large) och annan information på klientsidan måste utvecklingskonsolen öppnas med F12. Navigera sedan till fliken "Network" (nätverk). Nu kan sidan öppnas, webbplatsen (exempel index.php) ska vara synlig i fliken nätverk. Denna måste väljas och sedan måste avsnittet Herder väljas. Användaren kommer då att se följande resultat:
URL: https://http-statuscode.com/errorCodeExample.php?code=431
Status: 431 Request Header Fields Too Large
Dessa: Network
IP-adress: XX.XX.XX.XX
Så här skapar du en egen felsida för statuskoden 431
Apache Webserver
Webbservern "Apache" är en av de vanligaste webbservrarna på Internet. För att skapa en egen 431 Request Header Fields Too Large-felsida i "Apache" måste följande ändring göras i följande fil.
NGINX Webserver
I likhet med webbservern Apache används NGINX i stor utsträckning på Internet. För att skapa en egen 431 Request Header Fields Too Large-felsida i "NGINX" måste följande ändring göras i följande fil.
location = /431.html {
root /usr/share/nginx/html;
internal;
}
Webbläsarnas kompatibilitet med statuskoden 431
Chrome | no data |
Edge | no data |
Firefox | no data |
Opera | no data |
Safari | no data |
Chrome Android | no data |
Firefox for Android | no data |
Opera Android | no data |
Safari on iOS | no data |
Internet | no data |
WebView Android | no data |
Konstanter i programmeringsspråk
HttpStatusCode.RequestHeaderFieldsTooLarge
http.StatusRequestHeaderFieldsTooLarge
Response::HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE
:request_header_fields_too_large