400

Bad Request

Oficiální stránky Kódy dílčích stavů
Požadavek je neplatný

Specifikace stavového kódu HTTP 400

Stavový kód 400 Bad Request označuje, že server nemůže nebo nechce zpracovat požadavek z důvodu chyby klienta (např. nesprávná syntaxe požadavku, neplatné zarámování zprávy požadavku nebo chybné směrování požadavku).

Zdroj / Citace z: Stavový kód 400 Bad Request HTTP je specifikován v oddílu 6.5.1 oddílu RFC7231.

Jak vyhodit stavový kód 400 pomocí PHP?

Pro zobrazení stavového kódu HTTP 400 na webové stránce lze použít funkci PHP http_response_code. Syntaxe je následující: http_response_code(400) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testování stavového kódu HTTP 400

Aby bylo možné zobrazit stavový kód HTTP (v tomto případě 400 Bad Request) a další informace na straně klienta, je třeba otevřít vývojovou konzolu pomocí klávesy F12. Poté přejděte na kartu "Síť". Nyní lze stránku otevřít, webová stránka (příklad index.php) by měla být viditelná na kartě sítě. Ta musí být vybrána a poté musí být vybrána sekce Herder. Uživatel pak uvidí následující výsledek:

Stavový kód 400 Bad Request
Přehled
URL: https://http-statuscode.com/errorCodeExample.php?code=400
Stav: 400 Bad Request
Tyto stránky: Network
IP adresa: XX.XX.XX.XX
Stavový kód 400 Bad Request

Jak vytvořit vlastní chybovou stránku pro stavový kód 400

Vytvoření vlastní chybové stránky 400 Bad Request je na webových serverech Apache i NGINX poměrně snadné.

Apache Webserver

Webový server Apache je jedním z nejběžnějších webových serverů na internetu. Chcete-li vytvořit vlastní chybovou stránku 400 Bad Request v serveru "Apache", je třeba provést následující změnu v následujícím souboru.

File: .htaccess
ErrorDocument 400 /errors/400.html

NGINX Webserver

Podobně jako webový server Apache se na internetu hojně používá i NGINX. Chcete-li vytvořit vlastní chybovou stránku 400 Bad Request v serveru "NGINX", je třeba provést následující změnu v následujícím souboru.

File: sites-enabled/default
error_page 400 /400.html;
location = /400.html {
    root /usr/share/nginx/html;
    internal;
}

Kompatibilita stavového kódu 400 s prohlížeči

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

Konstanty v programovacích jazycích

HttpStatusCode.BadRequest
:not_modified
http.StatusBadRequest
response::HTTP_BAD_REQUEST
httplib.BAD_REQUEST
http.client.BAD_REQUEST
http.HTTPStatus.BAD_REQUEST
:bad_request

Dílčí stavové kódy stavového kódu 400

Dílčí stavové kódy jsou čistě technického rázu a nikdy by neměly být odesílány uživateli. Například pokud je vyhozen stavový kód 400.1, může být zaznamenán, ale uživateli bude zaslán stavový kód 400.:
400.1 Invalid Destination Header
HTTP IIS, Neoficiální
400.2 Invalid Depth Header
HTTP IIS, Neoficiální
400.3 Invalid If Header
HTTP ISS, Neoficiální
400.4 Invalid Overwrite Header
HTTP ISS, Neoficiální
400.5 Invalid Translate Header
HTTP ISS, Neoficiální
400.6 Invalid Request Body
HTTP ISS, Neoficiální
400.7 Invalid Content Length
400, Neoficiální
400.8 Invalid Timeout
HTTP ISS, Neoficiální
400.9 Invalid Lock Token
HTTP IIS, Neoficiální
400.10 Invalid X-Forwarded-For (XFF) header
HTTP ISS, Neoficiální
400.11 Invalid WebSocket request
HTTP IIS, Neoficiální
400.601 Bad client request (ARR)
HTTP ISS, Neoficiální
400.602 Invalid time format (ARR)
HTTP IIS, Neoficiální
400.603 Parse range error (ARR)
HTTP IIS, Neoficiální
400.604 Client gone (ARR)
HTTP IIS, Neoficiální
400.605 Maximum number of forwards (ARR)
HTTP IIS, Neoficiální
400.606 Asynchronous competition error (ARR)
HTTP IIS, Neoficiální
Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser je nadšený webový vývojář se zálibou ve stavových kódech HTTP.

LinkedInGitHub