502

Bad Gateway

Ufficiale Codici di sotto-stato
il server a valle ha restituito un messaggio di errore

Specifica del codice di stato HTTP 502

Il codice di stato 502 Bad Gateway indica che il server, mentre funge da gateway o proxy, ha ricevuto una risposta non valida da un server in entrata a cui ha avuto accesso nel tentativo di soddisfare la richiesta.

Fonte / Citazione da: Il codice di stato HTTP 502 Bad Gateway è specificato dalla sezione 6.6.3 di RFC7231.

Come lanciare un codice di stato 502 con PHP?

Per lanciare il codice di stato HTTP 502 su una pagina web, si può usare la funzione PHP http_response_code. La sintassi è la seguente: http_response_code(502) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Test del codice di stato HTTP 502

Per poter visualizzare il codice di stato HTTP (in questo caso 502 Bad Gateway) e altre informazioni sul lato client, è necessario aprire la console di sviluppo con F12. Quindi navigare nella scheda "Rete". Ora la pagina può essere aperta, il sito web (ad esempio index.php) dovrebbe essere visibile nella scheda Rete. Questo deve essere selezionato e poi deve essere selezionata la sezione Herder. L'utente vedrà quindi il seguente risultato:

Codice di stato 502 Bad Gateway
Panoramica
URL: https://http-statuscode.com/errorCodeExample.php?code=502
Stato: 502 Bad Gateway
Quelle: Network
Indirizzo IP: XX.XX.XX.XX
Codice di stato 502 Bad Gateway

Come posso risolvere il problema del codice di stato 502?

Il codice di stato HTTP 502 Bad Gateway viene solitamente restituito da un server proxy, che funge da intermediario tra il client (ad esempio, un browser Web) e il server con cui il client vuole comunicare. L'errore si verifica quando il server proxy riceve una risposta non valida da un server a monte. Esistono diverse cause possibili per questo errore e di seguito verranno illustrati alcuni dei problemi più probabili e verrà spiegato come risolverli.

  • Server upstream sovraccarico o irraggiungibile: Un motivo comune per il codice di stato HTTP 502 Bad Gateway è che il server upstream a cui si collega il server proxy è sovraccarico o irraggiungibile. In questo caso, è necessario assicurarsi che il server upstream funzioni correttamente e abbia risorse sufficienti per elaborare le richieste. Controllare i registri del server e le connessioni di rete per vedere se ci sono problemi. Se il server upstream è sovraccarico, è possibile distribuire il carico su più server o aggiungere ulteriori risorse per risolvere il problema.
  • Problemi di rete: un altro possibile problema è rappresentato da problemi di rete tra il server proxy e il server upstream. Può trattarsi di una connessione instabile, di un problema DNS o di un'impostazione del firewall che ostacola la comunicazione. Controllare le impostazioni di rete per assicurarsi che tutte le porte necessarie siano aperte e che la connessione sia stabile. Verificate anche la risoluzione DNS per assicurarvi che il server upstream sia risolto correttamente. In alcuni casi, può essere utile riavviare il server proxy per risolvere i problemi di rete.
  • Server proxy mal configurato: Anche una configurazione errata del server proxy può portare a un codice di stato HTTP 502 Bad Gateway. Assicurarsi che le impostazioni del proxy siano corrette e che il server proxy inoltri correttamente le richieste al server upstream. Controllare i file di configurazione e le impostazioni del proxy per verificare che siano corretti. In alcuni casi, può essere utile aggiornare il server proxy o passare a un'altra versione per risolvere i problemi noti.
  • Applicazione errata sul server upstream: È anche possibile che il server upstream abbia un'applicazione o una configurazione difettosa che causa un codice di stato HTTP 502 Bad Gateway. Controllare i log dell'applicazione e del server per individuare eventuali errori o eccezioni. Aggiornare o riparare l'applicazione per risolvere i problemi noti. Può anche essere utile collaborare con uno sviluppatore o un amministratore di sistema per analizzare e risolvere il problema.
  • Problemi con il server proxy stesso: Infine, il codice di stato HTTP 502 Bad Gateway può anche essere causato da problemi con il server proxy stesso. Ciò può essere dovuto a errori software, aggiornamenti mancanti o problemi hardware. Controllate i registri del server proxy per verificare la presenza di messaggi di errore o avvisi. Aggiornare il server proxy alla versione più recente e verificare la presenza di problemi noti. In alcuni casi, potrebbe essere necessario reinstallare il server proxy o passare a una soluzione software alternativa per risolvere il problema.
    • È importante notare che la risoluzione del codice di stato HTTP 502 Bad Gateway dipende fortemente dall'ambiente e dalla configurazione specifici. Può essere utile collaborare con uno sviluppatore o un amministratore di sistema esperto per diagnosticare e risolvere il problema.

      .

Come creare la propria pagina di errore per il codice di stato 502

Creare la propria pagina di errore 502 Bad Gateway è relativamente facile sia con il server web "Apache" che con "NGINX".

Apache Webserver

Il server web "Apache" è uno dei server web più comuni su Internet. Per creare la propria pagina di errore 502 Bad Gateway in "Apache", è necessario apportare la seguente modifica al file seguente.

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

NGINX Webserver

Simile al server web "Apache", anche "NGINX" è ampiamente utilizzato su Internet. Per creare la propria pagina di errore 502 Bad Gateway in "NGINX", è necessario apportare la seguente modifica al file seguente.

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

Compatibilità con i browser del codice di stato 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

Costanti nei linguaggi di programmazione

HttpStatusCode.BadGateway
http.StatusBadGateway
Response::HTTP_BAD_GATEWAY
httplib.BAD_GATEWAY
http.client.BAD_GATEWAY
http.HTTPStatus.BAD_GATEWAY
:bad_gateway

Codici di stato secondari del codice di stato 502

I codici di stato secondari sono puramente tecnici e non devono mai essere inviati all'utente. Ad esempio, se viene lanciato il codice di stato 502.1, questo può essere registrato, ma il codice di stato 502 sarà inviato all'utente.:
502.1 CGI application timeout
HTTP IIS, Non ufficiale
502.2 Bad gateway: Premature Exit
HTTP IIS, Non ufficiale
502.3 Bad Gateway: Forwarder Connection Error (ARR)
HTP IIS, Non ufficiale
502.4 Bad Gateway: No Server (ARR)
HTP IIS, Non ufficiale
502.5 WebSocket failure (ARR)
HTTP IIS, Non ufficiale
502.6 Forwarded request failure (ARR)
HTTP IIS, Non ufficiale
502.7 Execute request failure (ARR)
HTTP IIS, Non ufficiale
Autore: Tony Brüser
Autore: Tony Brüser

Tony Brüser è un entusiasta sviluppatore web con una predilezione per i codici di stato HTTP.

LinkedInGitHub