502 Bad Gateway

502 Bad Gateway error guide banner

DIREKTE ANTWORT

502 Bad Gateway bedeutet, dass ein Reverse Proxy, Load Balancer oder CDN keine gültige Antwort vom Backend-Server erhalten konnte. Prüfen Sie den Backend-Prozess, das Proxy-Fehlerprotokoll, den Upstream-Host oder -Port, Socket-Berechtigungen, Ressourcenlimits und den Zugriff vom CDN auf den Origin. Der Fehler liegt meist zwischen Servern und nicht im Browser.

Wichtigste Punkte

  • Ein 502 wird von einem Vermittler erzeugt, wenn die Upstream-Anwendung nicht erreichbar ist, die Zeitüberschreitung überschritten wird oder eine nicht verwendbare Antwort zurückgibt.
  • Beginnen Sie mit dem Proxy-Fehlerprotokoll und dem Status des Backend-Prozesses. Damit lassen sich Verbindungs-, Timeout-, Socket-, Header- und Anwendungsfehler meist unterscheiden.
  • Prüfen Sie, ob Nginx, Apache oder der Load Balancer auf den tatsächlichen Port oder Unix-Socket der Anwendung verweist.
  • Wenn ein CDN beteiligt ist, vergleichen Sie eine direkte Anfrage an den Origin mit der öffentlichen Anfrage und prüfen Sie die Firewall- und TLS-Einstellungen des Origins.
  • Das Leeren des Browser-Caches behebt einen anhaltenden 502-Fehler nur selten, da der Fehler normalerweise zwischen Servern auftritt.
Aktualisiert am 2026-09-24 · Redaktionelle Prüfung ausstehend HTTP- und Serverfehler
SA

Site Administrator

Was dieser Fehler bedeutet und wie du ihn erkennst

  • Der Browser zeigt 502 Bad Gateway oder Bad Gateway, teilweise mit dem Branding von Nginx, Apache, Cloudflare oder einem anderen Proxy.
  • Der Fehler betrifft mehrere Benutzer, beginnt nach einem Deployment oder einer Konfigurationsänderung oder tritt bei steigendem Traffic auf.
  • Die Fehler können sporadisch auftreten, wenn Backend-Worker, Arbeitsspeicher, CPU oder Datenbankverbindungen erschöpft sind.
  • Das Proxy-Protokoll meldet eine fehlgeschlagene Upstream-Verbindung, einen Timeout, eine nicht lesbare Statuszeile, eine fehlerhafte Antwort, zu große Header oder einen Socket-Fehler.
  • Eine direkte Anfrage an den Origin funktioniert, während dieselbe Anfrage über ein CDN 502 zurückgibt. Das deutet auf Probleme beim CDN-zu-Origin-Zugriff, mit der Firewall, TLS oder dem Routing hin.

Hauptursachen nach Wahrscheinlichkeit

  1. Backend gestoppt oder stürzt ab: PHP-FPM, Node.js, Gunicorn oder ein anderer Anwendungsprozess wurde beendet, befindet sich in einer Crash-Schleife oder konnte nach einem Deployment nicht gestartet werden.
  2. Backend überlastet oder Timeout: Worker, Arbeitsspeicher, CPU, Datenbankverbindungen oder eine andere Abhängigkeit sind erschöpft, sodass der Proxy nicht rechtzeitig eine Antwort erhält.
  3. Falsche Upstream-Konfiguration: Der Proxy verwendet den falschen Host, Port, die falsche Container-Adresse, den falschen Unix-Socket oder Anwendungspfad.
  4. Fehler beim Socket- oder Firewall-Zugriff: Der Proxy kann das Backend wegen Socket-Berechtigungen, einer Netzwerkregel, einer Firewall oder einer Änderung an einer Security Group nicht erreichen.
  5. Ungültige oder zu große Backend-Antwort: Die Anwendung sendet eine fehlerhafte Ausgabe, eine nicht verwendbare Statuszeile oder Header, die größer sind, als der Proxy akzeptiert.
  6. Fehler bei der Verbindung vom CDN zum Origin: Ein CDN kann den Origin nicht erreichen, wird von der Origin-Firewall blockiert oder kann die von seiner Origin-Konfiguration erwartete HTTPS-Verbindung nicht herstellen.

So behebst du den Fehler

1Tritt der 502-Fehler nur über ein CDN auf?2Läuft das Backend und nimmt es eine lokale Anfrage an?3Was zeigt das Proxy-Protokoll?4Funktioniert der Origin nach der Korrektur?
Diagnostic flow at a glance — full detail in the steps below.

1. Ermitteln, wo der 502-Fehler erzeugt wird

Prüfen Sie, ob die Fehlerseite das Branding von Nginx, Apache, Cloudflare, einer Hosting-Plattform oder eines anderen Vermittlers trägt. Stellen Sie fest, ob alle Routen oder nur ein bestimmter Anwendungspfad fehlschlagen, und notieren Sie den Zeitpunkt des Fehlers sowie die betroffene URL. So können Sie die Anfrage den richtigen Protokollen zuordnen.

2. Backend-Prozess und Protokolle prüfen

Prüfen Sie mit autorisiertem Zugriff auf den Server oder das Hosting-Panel, ob der Anwendungsprozess ausgeführt wird und Anfragen annimmt. Durchsuchen Sie die Protokolle nach Crash-Schleifen, fatalen Anwendungsfehlern, Beendigung wegen Speichermangels, fehlenden Abhängigkeiten oder Startfehlern.

Eine beispielhafte, schreibgeschützte Dienstprüfung kann so aussehen:

bash
systemctl status php8.2-fpm
systemctl status nginx
pm2 status

Verwenden Sie die installierte PHP-FPM-Version und den eingesetzten Process Manager, statt diese Namen unverändert zu übernehmen. Wenn das Backend gestoppt ist oder sich in einer Crash-Schleife befindet, beheben Sie zuerst die zugrunde liegende Ursache. Erst danach sollten Sie erwägen, den betroffenen Dienst im Rahmen Ihres normalen Änderungsverfahrens neu zu starten. Ein Neustart kann Anfragen unterbrechen und wichtige Laufzeitinformationen entfernen. Stellen Sie daher vorher sicher, dass Sie dazu berechtigt sind, und sichern Sie relevante Protokolle.

3. Proxy-Fehlerprotokoll lesen

Gleichen Sie den Zeitstempel im Protokoll mit einer fehlgeschlagenen Anfrage ab. Prüfen Sie bei Nginx das konfigurierte Fehlerprotokoll, häufig /var/log/nginx/error.log. Bei Apache mit mod_proxy oder mod_proxy_fcgi prüfen Sie das Apache-Fehlerprotokoll.

Nützliche Unterscheidungen sind:

  • connect() failed: Der Proxy kann den konfigurierten Upstream nicht erreichen.
  • upstream timed out: Das Backend oder eine seiner Abhängigkeiten ist zu langsam oder überlastet.
  • upstream sent too big header: Die Response-Header überschreiten die konfigurierten Proxy-Puffer.
  • Ein Fehler beim Lesen der Statuszeile: Das Backend hat die Verbindung geschlossen oder eine ungültige Antwort zurückgegeben.

Der genaue Speicherort des Protokolls und das Format der Meldungen hängen vom Server und der Hosting-Plattform ab.

4. Upstream-Host, -Port oder Socket prüfen

Überprüfen Sie die Konfiguration des Reverse Proxys. Prüfen Sie bei Nginx den Block proxy_pass oder upstream. Prüfen Sie bei Apache ProxyPass, ProxyPassMatch und die Verbindungseinstellungen von PHP-FPM.

Verwenden Sie bei Bedarf eine schreibgeschützte Prüfung der Listener und eine lokale Anfrage:

bash
ss -tlnp
curl http://127.0.0.1:PORT

Ersetzen Sie PORT durch den konfigurierten Anwendungsport. Wenn die Anwendung einen Unix-Socket verwendet, prüfen Sie, ob der Pfad existiert und der Proxy-Prozess darauf zugreifen kann. Bei PHP-FPM muss die Einstellung listen des Pools mit der in Apache oder Nginx konfigurierten Adresse beziehungsweise dem Socket übereinstimmen. Machen Sie einen internen Test-Endpunkt nicht eigens für diese Prüfung öffentlich zugänglich.

5. Überlastung, Abhängigkeiten und Timeouts untersuchen

Wenn das Backend läuft, die Fehler aber mit Traffic-Spitzen oder langsamen Anfragen zusammenfallen, prüfen Sie CPU, Arbeitsspeicher, Worker-Anzahl, Datenbankverbindungen, Warteschlangentiefe und Ressourcenlimits des Hosting-Panels. Ein Prozess kann laufen, ohne weitere Arbeit annehmen zu können.

Erhöhen Sie Proxy-Timeouts oder Puffergrößen nicht ohne entsprechende Anhaltspunkte. Wenn das Protokoll zu große Header meldet, untersuchen Sie die Antwort der Anwendung und prüfen Sie die relevanten Nginx-Einstellungen proxy_buffer_size und proxy_buffers. Falls eine Konfigurationsänderung erforderlich ist, validieren Sie sie und wenden Sie sie über das genehmigte Änderungsverfahren an, statt einen Produktions-Proxy ohne Autorisierung neu zu laden.

6. Origin- und CDN-Pfad vergleichen

Wenn Cloudflare oder ein anderes CDN der Website vorgeschaltet ist, testen Sie den Origin mit der korrekten Origin-Adresse und dem Host-Header direkt, sofern Sie dazu berechtigt sind. Vergleichen Sie das Ergebnis mit der öffentlichen Anfrage.

  • Auch der Origin schlägt fehl: Untersuchen Sie Anwendung, Proxy, Socket, Port, Firewall und Ressourcenbedingungen am Origin.
  • Der Origin funktioniert, aber das CDN schlägt fehl: Prüfen Sie CDN-zu-Origin-Firewallregeln, Erreichbarkeit des Origins, Routing und den Origin-SSL/TLS-Modus des CDNs. Stellen Sie sicher, dass der Origin das vom CDN erwartete Protokoll und die erwartete Zertifikatskonfiguration bereitstellt.

7. Nach der Fehlerbehebung erneut testen

Stellen Sie zunächst sicher, dass der Origin die erwartete Antwort zurückgibt. Testen Sie die Anfrage anschließend über den Reverse Proxy oder das CDN. Wenn nur einige URLs fehlschlagen, vergleichen Sie deren Anwendungsrouten, Antwortgröße, Authentifizierungsanforderungen und Backend-Abhängigkeiten, anstatt das Problem als allgemeinen Ausfall zu behandeln.

8. Limits des Hosting-Panels prüfen

Prüfen Sie bei cPanel, Plesk oder vergleichbarem Shared Hosting die PHP-FPM- und Ressourcenverbrauchsprotokolle. Das Konto erreicht möglicherweise ein vom Anbieter festgelegtes Limit für Prozesse, Arbeitsspeicher oder Nebenläufigkeit. Wenn das Limit nicht geändert werden kann, teilen Sie dem Hoster die Zeitpunkte der Fehler, die betroffene Route und die relevante Protokollmeldung mit, damit er Infrastrukturprotokolle prüfen kann.

Vorbeugung und Überprüfung der Lösung

  • Betreiben Sie die Anwendung unter Prozessüberwachung und überwachen Sie wiederholte Abstürze, statt sich ausschließlich auf automatische Neustarts zu verlassen.
  • Überwachen Sie Arbeitsspeicher, CPU, Worker-Auslastung, Datenbankverbindungen, Warteschlangentiefe und Hosting-Panel-Limits, bevor sie Anfragen beeinträchtigen.
  • Legen Sie bewusste und kompatible Timeouts zwischen Anwendung, Proxy, Load Balancer und CDN fest. Verwenden Sie keine längeren Timeouts, um ein fehlerhaftes Backend zu verbergen.
  • Überprüfen Sie nach Deployments und Konfigurationsänderungen den erwarteten Anwendungsport oder Socket.
  • Testen Sie repräsentative Routen nach Änderungen an Origin-TLS, Firewallregeln oder Proxy-Konfiguration direkt gegen den Origin und über das CDN.
  • Bewahren Sie Proxy- und Anwendungsprotokolle mit synchronisierten Zeitstempeln auf, damit sporadische 502-Antworten Backend-Ereignissen zugeordnet werden können.
  • Dokumentieren Sie für die Umgebung den zuständigen Dienst, die Upstream-Adresse, Socket-Berechtigungen und das genehmigte Wiederherstellungsverfahren.

Wann externe Hilfe sinnvoll ist

Wenden Sie sich an den Hosting-Anbieter, CDN-Anbieter oder Plattform-Support, wenn das Backend weiterhin abstürzt, das Konto ein festgelegtes Ressourcenlimit erreicht oder Sie keinen Zugriff auf die Protokolle von Proxy, Container, Load Balancer oder Origin haben. Geben Sie die genauen Fehlerzeitpunkte, die betroffene URL oder Route, das Ergebnis eines direkten Origin-Tests, den Vermittler, der den Fehler angezeigt hat, sowie die relevante Proxy-Protokollmeldung an. Eskalieren Sie ein CDN-spezifisches Problem, wenn direkte Anfragen an den Origin erfolgreich sind, CDN-Anfragen aber weiterhin fehlschlagen, nachdem Origin-TLS, Firewall-Zugriff und Erreichbarkeit geprüft wurden.

Website prüfen

Häufig gestellte Fragen

Behebt das Leeren des Browser-Caches einen 502-Bad-Gateway-Fehler?

Selten. Ein 502 wird normalerweise von einem Proxy oder CDN nach einem Fehler bei der Server-zu-Server-Kommunikation erzeugt. Das Leeren des Caches kann eine zwischengespeicherte Fehlerseite entfernen, repariert jedoch kein gestopptes, überlastetes, nicht erreichbares oder falsch konfiguriertes Backend.

Ist ein 502 dasselbe wie ein 500-Fehler?

Nein. Ein 500 bedeutet, dass der Anwendungsserver bei der Verarbeitung einer Anfrage einen internen Fehler festgestellt hat. Ein 502 bedeutet, dass ein Vermittler eine ungültige oder nicht verwendbare Antwort vom Backend erhalten hat oder nicht erfolgreich mit ihm kommunizieren konnte.

Kann sich ein 502 Bad Gateway von selbst beheben?

Manchmal. Eine vorübergehende Traffic-Spitze kann vorübergehen oder ein überwachter Backend-Prozess kann sich selbst wiederherstellen. Wenn der Fehler bestehen bleibt oder wiederholt auftritt, untersuchen Sie die Backend- und Proxy-Protokolle, statt sich auf wiederholtes Neuladen der Seite zu verlassen.

Warum zeigt Cloudflare einen 502, obwohl der Origin direkt funktioniert?

Das CDN kann den Origin möglicherweise nicht von seinem Edge-Netzwerk aus erreichen, wird von der Origin-Firewall blockiert oder kann die erwartete TLS-Verbindung nicht herstellen. Vergleichen Sie direkte und CDN-Anfragen und prüfen Sie anschließend die Zugriffsregeln des Origins sowie die Origin-SSL/TLS-Konfiguration des CDNs.

Was sollte ich in Nginx bei einem 502 zuerst prüfen?

Prüfen Sie das Nginx-Fehlerprotokoll, stellen Sie sicher, dass die Anwendung an der in proxy_pass konfigurierten Adresse lauscht, und testen Sie diese Adresse lokal. Verbindungsfehler, Timeouts und Meldungen zu übergroßen Headern erfordern unterschiedliche weitere Prüfungen.

Was bedeutet ein 502 bei Shared Hosting?

Oft bedeutet es, dass der PHP-FPM-Pool des Kontos abgestürzt ist oder ein vom Anbieter festgelegtes Prozess- oder Ressourcenlimit erreicht hat. Prüfen Sie die PHP-FPM- und Ressourcenverbrauchsprotokolle im Hosting-Panel und wenden Sie sich an den Hoster, wenn das Limit nicht angepasst werden kann.

Weitere Dokumentation

Für maßgebliche Implementierungsdetails konsultieren Sie die Dokumentation des im betroffenen Umfeld verwendeten Vermittlers und Backends: die Dokumentation zu Reverse Proxy und Fehlerprotokollen von Nginx oder Apache, bei Verwendung von PHP die Referenz zur PHP-FPM-Pool-Konfiguration, die Dokumentation des Anwendungs-Process-Managers sowie die Hinweise des CDN-Anbieters zu Origin-Konnektivität, Firewall und SSL/TLS. Verwenden Sie die Dokumentationsversion, die zur installierten Software und Hosting-Plattform passt.