502

Bad Gateway

Officiell Koder för understatus
Servern i nedströmsflödet returnerade ett felmeddelande.

Specifikation av HTTP-statuskoden 502

Statuskoden 502 Bad Gateway anger att servern, som fungerar som en gateway eller proxy, fick ett ogiltigt svar från en inkommande server som den fick tillgång till när den försökte uppfylla begäran.

Källa / Citat från: HTTP-statuskoden 502 Bad Gateway anges i avsnitt 6.6.3 i RFC7231.

Hur skickar man en 502-statuskod med PHP?

För att kasta HTTP-statuskoden 502 på en webbsida kan PHP-funktionen http_response_code användas. Syntaxen är följande: http_response_code(502) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testa HTTP-statuskoden 502

För att kunna visa HTTP-statuskoden (i det här fallet 502 Bad Gateway) 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:

Statuskod 502 Bad Gateway
Översikt
URL: https://http-statuscode.com/errorCodeExample.php?code=502
Status: 502 Bad Gateway
Dessa: Network
IP-adress: XX.XX.XX.XX
Statuskod 502 Bad Gateway

Hur löser jag problemet med statuskoden 502?

502 Bad Gateway returneras vanligtvis av en proxyserver, som fungerar som en mellanhand mellan klienten (t.ex. en webbläsare) och den server som klienten vill kommunicera med. Felet uppstår när proxyservern får ett ogiltigt svar från en uppströmsserver. Det finns flera möjliga orsaker till det här felet, och jag kommer att diskutera några av de mest troliga problemen nedan och förklara hur du kan åtgärda dem.

  • Överbelastad eller otillgänglig uppströmsserver: En vanlig orsak till HTTP-statuskod 502 Bad Gateway är att den uppströmsserver som proxyservern ansluter till är överbelastad eller onåbar. I så fall bör du se till att uppströmsservern fungerar som den ska och har tillräckliga resurser för att behandla förfrågningarna. Kontrollera serverloggarna och nätverksanslutningarna för att se om det finns några problem. Om uppströmsservern är överbelastad kan du kanske fördela belastningen på flera servrar eller lägga till ytterligare resurser för att åtgärda problemet.
  • Nätverksproblem: Ett annat möjligt problem är nätverksproblem mellan proxyservern och uppströmsservern. Det kan vara en instabil anslutning, ett DNS-problem eller en brandväggsinställning som hindrar kommunikationen. Kontrollera nätverksinställningarna för att se till att alla nödvändiga portar är öppna och att anslutningen är stabil. Testa även DNS-upplösningen för att säkerställa att uppströmsservern är korrekt upplöst. I vissa fall kan det också vara bra att starta om proxyservern för att lösa nätverksproblem.
  • Felkonfigurerad proxyserver: Felaktig konfiguration av proxyservern kan också leda till en HTTP-statuskod 502 Bad Gateway. Kontrollera att proxyinställningarna är korrekta och att proxyservern vidarebefordrar förfrågningarna korrekt till uppströmsservern. Kontrollera proxyns konfigurationsfiler och inställningar för att se till att de är korrekta. I vissa fall kan det också vara bra att uppdatera proxyservern eller byta till en annan version för att åtgärda kända problem.
  • Felaktigt program på uppströmsservern: Det är också möjligt att uppströmsservern har ett felaktigt program eller en felaktig konfiguration som resulterar i HTTP-statuskod 502 Bad Gateway. Kontrollera program- och serverloggarna för att leta efter eventuella fel eller undantag. Uppdatera eller reparera applikationen för att åtgärda kända problem. Det kan också vara bra att arbeta med en utvecklare eller systemadministratör för att analysera och lösa problemet.
  • Problem med själva proxyservern: Slutligen kan HTTP-statuskod 502 Bad Gateway också orsakas av problem med själva proxyservern. Detta kan bero på programfel, saknade uppdateringar eller hårdvaruproblem. Kontrollera proxyserverns loggar efter felmeddelanden eller varningar. Uppdatera proxyservern till den senaste versionen och kontrollera om det finns några kända problem. I vissa fall kan det vara nödvändigt att installera om proxyservern eller byta till en alternativ programvarulösning för att åtgärda problemet.
    • Det är viktigt att notera att lösningen på HTTP-statuskod 502 Bad Gateway är mycket beroende av din specifika miljö och konfiguration. Det kan vara bra att arbeta med en erfaren utvecklare eller systemadministratör för att diagnostisera och åtgärda problemet.

      .

Så här skapar du en egen felsida för statuskoden 502

Det är relativt enkelt att skapa en egen 502 Bad Gateway-felsida med både Apache- och NGINX-webbservrarna.

Apache Webserver

Webbservern "Apache" är en av de vanligaste webbservrarna på Internet. För att skapa en egen 502 Bad Gateway-felsida i "Apache" måste följande ändring göras i följande fil.

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

NGINX Webserver

I likhet med webbservern Apache används NGINX i stor utsträckning på Internet. För att skapa en egen 502 Bad Gateway-felsida i "NGINX" måste följande ändring göras i följande fil.

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

Webbläsarnas kompatibilitet med statuskoden 502

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.BadGateway
http.StatusBadGateway
Response::HTTP_BAD_GATEWAY
httplib.BAD_GATEWAY
http.client.BAD_GATEWAY
http.HTTPStatus.BAD_GATEWAY
:bad_gateway

Understatuskoder till 502 Statuskod

Substatuskoder är rent tekniska och ska aldrig skickas till användaren. Om t.ex. statuskod 502.1 visas kan det loggas, men statuskod 502 skickas till användaren.:
502.1 CGI application timeout
HTTP IIS, Inofficiell
502.2 Bad gateway: Premature Exit
HTTP IIS, Inofficiell
502.3 Bad Gateway: Forwarder Connection Error (ARR)
HTP IIS, Inofficiell
502.4 Bad Gateway: No Server (ARR)
HTP IIS, Inofficiell
502.5 WebSocket failure (ARR)
HTTP IIS, Inofficiell
502.6 Forwarded request failure (ARR)
HTTP IIS, Inofficiell
502.7 Execute request failure (ARR)
HTTP IIS, Inofficiell

Underhållande memes om HTTP-statuskoden 502

Författare: Tony Brüser
Författare: Tony Brüser

Tony Brüser är en entusiastisk webbutvecklare med en förkärlek för HTTP-statuskoder.

LinkedInGitHub