Nginx 502-Fehler mit localhost vs 127.0.0.1

Nginx 502-Fehler mit localhost vs 127.0.0.1

Ich habe eine Webanwendung, die auf 127.0.0.1:8080 läuft. Zunächst habe ich sie nginx.confmit konfiguriert localhost:8080. Beispiel:

location / {
    proxy_set_header Host $host;
    proxy_pass http://localhost:8080;
}

Dies funktionierte in 99 % der Fälle einwandfrei. Das Problem war jedoch, dass, wenn ein Benutzer eine Anfrage stellte, die eine Panik in meiner Webanwendung auslöste, dieser Benutzer nicht nur einen 502-Fehler erhielt, sondern meine gesamte Website für ALLE Benutzer nicht erreichbar war. Bis ich die Webanwendung manuell neu startete.

Das erwartete Verhalten war, dass der Benutzer, der den Fehler auslöste, einen 502-Fehler erhielt, der jedoch für alle anderen Benutzer isoliert war. Die Site wäre also weiterhin zugänglich und nicht für alle nicht erreichbar.

Ich wusste lange nicht, wie ich das beheben könnte. Bis ich anfing, 127.0.0.1:8080anstelle von zu verwenden localhost:8080. Also

location / {
    proxy_set_header Host $host;
    proxy_pass http://127.0.0.1:8080;
}

127.0.0.1:8080Wenn ein Benutzer eine Panik in meiner Webanwendung auslöst, ist meine Site nicht mehr für alle erreichbar .

Was ist der Grund dafür? Das dachte ich mir localhostund 127.0.0.1war auch so. Liegt das daran, dass localhostder Server noch eine DNS-Anfrage stellen muss und der DNS aufgrund des Fehlers irgendwie nicht verfügbar ist?

verwandte Informationen