So beheben Sie den 504-Gateway-Timeout-Fehler auf Ihrer WordPress-Site

Veröffentlicht: 2020-10-26

Der 504 Gateway Timeout- Fehler ist einer der häufigsten HTTP 5xx- Fehler, mit denen Website-Eigentümer und Website-Besucher konfrontiert werden. Für viele WordPress-Blogs und E-Commerce-Plattformen ist es entscheidend zu wissen, wie man Serverfehler wie diesen behebt, um ihre hart verdienten Besucher davon abzuhalten, zu den Websites von Mitbewerbern zu wechseln.

Da der Fehler 504 Gateway Timeout Ihnen nicht mitteilt, warum er aufgetreten ist, ist es schwierig, die Ursache des Server-Timeouts zu bestimmen. Dieser Artikel hilft Ihnen, es im Detail zu verstehen, zu erfahren, wie Sie seine Ursache diagnostizieren und es dann beheben können.

Nachdem Sie alle verschiedenen im Beitrag erwähnten Lösungen ausprobiert haben, sollte Ihre Website in kürzester Zeit einsatzbereit sein.

Hört sich interessant an? Tauchen wir ein!

Sehen Sie sich lieber die Videoversion an?

Der 504 Gateway Timeout-Fehler ist einer der häufigsten HTTP 5xx-Fehler, mit denen Website-Eigentümer und Website-Besucher konfrontiert werden. Erfahren Sie, wie Sie das Problem mit dieser Anleitung schnell beheben können. Zum Twittern klicken

Was ist der 504-Gateway-Timeout-Fehler?

Jedes Mal, wenn Sie eine Website in Ihrem Browser besuchen, sendet der Browser eine Anfrage an den Webserver, auf dem die Website gehostet wird. Der Server verarbeitet die Anfrage und antwortet mit den angeforderten Ressourcen.

Veranschaulichung der Funktionsweise von HTTP-Anforderungen und -Antworten
Funktionsweise von HTTP-Anforderungen und -Antworten.

Die Serverantwort enthält einen von vielen HTTP-Statuscodes, um dem Browser den Status der Antwort anzuzeigen. Aber nicht alle diese HTTP-Statuscodes sind Fehler. Beispielsweise bedeutet ein Statuscode 200 OK, dass der Server die Anfrage erfolgreich verarbeitet hat und „Alles ist in Ordnung“.

Die HTTP-Statuscodes der Klasse 5xx zeigen an, dass etwas mit dem Server nicht stimmt, der Server sich dessen bewusst ist und die Client-Anforderung nicht ausführen kann. Daher werden sie auch als Server Error 5xx- Statuscodes bezeichnet.

Offiziell werden unter der Klasse 5xx fünf Statuscodes angegeben (500, 501, 502, 503, 504). Sie können auch auf viele inoffizielle Codes stoßen (506, 507, 509, 520 usw.).

Die Internet Engineering Task Force (IETF) definiert den Fehler 504 Gateway Timeout wie folgt:

Der Statuscode 504 (Gateway Timeout) zeigt an, dass der Server, während er als Gateway oder Proxy fungiert, keine rechtzeitige Antwort von einem Upstream-Server erhalten hat, auf den er zugreifen musste, um die Anfrage abzuschließen.

Zur weiteren Vereinfachung tritt dieser Fehler auf, wenn zwei Server an der Verarbeitung einer Anfrage beteiligt sind. Der erste Server (normalerweise der Hauptserver) läuft ab und wartet auf eine Antwort vom zweiten Server (Upstream-Server).

Der Fehler 504 Gateway Timeout manifestiert sich in verschiedenen Formen. Hier sind einige Möglichkeiten, wie es normalerweise angezeigt wird:

Der HTTP ERROR 504 im Chrome-Browser
Der 'HTTP ERROR 504' im Chrome-Browser.

Der Fehler 504 Gateway Timeout ähnelt dem Fehler 502 Bad Gateway, der darauf hinweist, dass der erste Server eine ungültige Antwort vom zweiten Server (Upstream-Server) erhalten hat.

504 GATEWAY TIMEOUT-Statuscode in Chrome DevTools
Der Statuscode „504 GATEWAY TIMEOUT“ in Chrome DevTools.

Variationen des 504-Gateway-Timeout-Fehlers

Der Browser zeigt jeden 504 Gateway Timeout-Fehler darin an, genau wie jeden anderen Fehler. Da es verschiedene Betriebssysteme, Webserver, Browser und Benutzeragenten gibt, kann es auf verschiedene Arten angezeigt werden.

Im Folgenden finden Sie einige häufige Varianten von 504-Fehlermeldungen, auf die Sie stoßen können:

  • 504 Gateway-Zeitüberschreitung
  • 504 Gateway-Timeout NGINX
  • NGINX 504 Gateway-Timeout
  • Gateway-Timeout-Fehler
  • Fehler 504
  • HTTP-Fehler 504
  • HTTP-Fehler 504 – Gateway-Timeout
  • HTTP-504
  • 504-Fehler
  • Gateway-Zeitüberschreitung (504)
  • Diese Seite funktioniert nicht – Die Antwort der Domain hat zu lange gedauert
  • 504 Gateway Timeout – Der Server hat nicht rechtzeitig geantwortet
  • Die Seitenanforderung wurde abgebrochen, da die Ausführung zu lange gedauert hat
  • Website-Besucher: Bei der Bearbeitung Ihrer Anfrage ist ein Problem aufgetreten. Bitte versuchen Sie es in einigen Minuten erneut.
  • Websitebesitzer: Es gab eine Gateway-Zeitüberschreitung. Weitere Informationen finden Sie in Ihrem Fehlerprotokoll.
  • Ein leerer weißer Bildschirm

Alle oben genannten Fehlerantworten weisen, obwohl anders formuliert, auf denselben 504-Gateway-Timeout-Serverfehler hin.

Webserver und Websites können anpassen, wie sie Benutzern den Fehler 504 Gateway Timeout anzeigen. Einige von ihnen können cool sein! Es ist eine ausgezeichnete Taktik, um die Enttäuschung ihrer Besucher zu unterdrücken.

Die angepasste HTTP 504-Fehlerseite von GitHub
Die angepasste HTTP 504-Fehlerseite von GitHub.

SEO-Auswirkung des 504-Gateway-Timeout-Fehlers

Alle 5xx-Fehler verhindern das Laden einer Webseite, wodurch sie sich nachteilig auf die Benutzererfahrung auswirken. Daher nehmen Suchmaschinen wie Google diese Fehler ernst. Wenn der Fehler über einen längeren Zeitraum bestehen bleibt, kann dies sogar dazu führen, dass die Webseite aus den Suchmaschinenergebnissen entfernt wird.

Wenn Google-Spider beispielsweise auf einen 503 Service Unavailable-Fehler stoßen, verstehen sie, dass es sich um ein vorübergehendes Problem handelt, da es hauptsächlich zum Aktivieren des Website-Wartungsmodus verwendet wird. Daher versuchen sie später erneut, die Seite zu crawlen.

Ein 504-Gateway-Timeout-Fehler ist nicht unbedingt vorübergehend, da er mehrere Gründe haben kann. Wenn Ihre Website nur für ein paar Minuten nicht verfügbar ist und die Spider versuchen, sie mehrmals pro Minute zu crawlen, versuchen sie, die Seite aus ihrem Cache bereitzustellen. Sie würden es nicht einmal bemerken.

Wenn Ihre Website jedoch für mehr als 6 Stunden oder länger nicht verfügbar ist, betrachtet Google den 504-Fehler als ein schwerwiegendes Website-weites Problem, das Sie so schnell wie möglich beheben müssen. Dies kann sich negativ auf Ihr SEO auswirken.

Anzeigen der Crawling-Fehler in der Google Search Console
Anzeigen der Crawling-Fehler in der Google Search Console

Die Google Search Console ist eines der besten SEO-Tools zur Überwachung der HTTP 5xx-Fehler Ihrer Website.

Ursachen des 504-Gateway-Timeout-Fehlers

Da der 504-Fehler auf eine Zeitüberschreitung zwischen Servern zurückzuführen ist, liegt das Problem wahrscheinlich nicht am Gerät oder der Internetverbindung des Clients. Dazu gehören auch Ihr Gerät und Ihre Verbindung.

Ein 504-Gateway-Timeout-Fehler weist darauf hin, dass der Webserver zu lange auf eine Antwort von einem anderen Server wartet und eine „Zeitüberschreitung“ eintritt. Diese Zeitüberschreitung kann viele Gründe haben: Der andere Server funktioniert nicht richtig, ist überlastet oder heruntergefahren.

Der andere Server muss nicht immer extern sein (z. B. CDN, API-Gateway). Es kann sich auch um eine serverähnliche Einheit innerhalb des Hauptwebservers handeln (z. B. Reverse-Proxy-Server, Datenbankserver).

So beheben Sie den 504-Gateway-Timeout-Fehler

Ohne genaue Details über die WordPress-Site zu kennen, wie z. B. die Serverkonfiguration, den Hosting-Plan, Plugins von Drittanbietern und den Datenverkehr, den sie anzieht, finden Sie es möglicherweise frustrierend und überwältigend, einen 504 Gateway Timeout-Fehler zu beheben.

Da viele Variablen beteiligt sind, empfehle ich Ihnen, mit der Behebung clientseitiger Probleme zu beginnen, die ziemlich selten sind, und dann zur Behebung serverseitiger Probleme überzugehen. Sie sind normalerweise die Übeltäter mit 504-Fehlern.

Versuchen Sie, die Webseite neu zu laden

Eines der ersten Dinge, die Sie versuchen können, wenn ein 504 Gateway Timeout-Fehler auftritt, ist, einige Minuten zu warten und zu versuchen, die Seite neu zu laden.

Sie können die Tastenkombination F5 drücken, um die Webseite in den meisten Browsern zu aktualisieren/neu zu laden. Um den Browser-Cache der Seite vor dem Neuladen zu entfernen, können Sie stattdessen die Tastenkombination STRG+F5 drücken.

Aktualisieren einer Webseite im Chrome-Browser
Aktualisieren einer Webseite im Chrome-Browser

Wenn Sie schon dabei sind, können Sie auch versuchen, die Website in einem anderen Browser zu laden, um dies als Problem auszuschließen. Da die meisten 504-Fehler auf vorübergehend überlastete Server zurückzuführen sind, sollte die Verwendung dieser Lösung dazu führen, dass Ihre Website sofort wieder funktioniert.

Wenn das Warten und Neuladen der Website das 504-Fehlerproblem nicht behebt, können Sie überprüfen, ob eine Website für alle oder nur für Sie ausgefallen ist. Zwei nützliche Online-Tools zum Testen einer Website auf Ausfallzeiten sind Down for Everyone oder Just Me und Is It Down Right Now?

Teste Kinsta.com auf Down for Everyone oder Just Me
Teste Kinsta.com auf Down for Everyone oder Just Me

Starten Sie Ihre Netzwerkgeräte neu

Manchmal können Probleme mit Ihren Netzwerkgeräten wie Modem oder Router zu einem 504 Gateway Timeout-Fehler führen. Ein Neustart dieser Geräte könnte Ihnen bei der Behebung des Problems helfen.

Während Sie alle diese Netzwerkgeräte in beliebiger Reihenfolge ausschalten können, ist die Reihenfolge, in der Sie sie wieder einschalten, wichtig. Schalten Sie diese Geräte normalerweise von „außen nach innen“ ein, indem Sie der Verbindungsreihenfolge des Internetdienstanbieters zu Ihrem Hauptclientgerät folgen.

Überprüfen Sie Ihre Proxy-Einstellungen

Ein Proxy-Server befindet sich zwischen Ihrem Gerät und dem Internet. Es wird hauptsächlich verwendet, um die Online-Privatsphäre zu verbessern, indem private Informationen (z. B. Gerätestandort) vor Websites und Webservern (z. B. mithilfe eines VPN) verborgen werden.

Obwohl es selten vorkommt, dass Proxyserver einen 504-Fehler verursachen, können manchmal falsche Proxyservereinstellungen der Grund sein. Sie können den Proxy-Server deaktivieren und versuchen, die Webseite neu zu laden, um zu sehen, ob der Fehler dadurch behoben wird.

Ändern der „Proxy“-Einstellungen in Windows 10
Ändern der „Proxy“-Einstellungen in Windows 10

Die meisten Clients verwenden keinen Proxy-Dienst, daher können Sie diesen Schritt überspringen, wenn Sie sicher sind, dass Sie keinen Proxy-Server verwenden. Möglicherweise haben Sie es jedoch eingestellt, ohne dass Sie es überhaupt wissen. Ich würde vorschlagen, dass Sie die Proxy-Einstellungen Ihres Geräts und Ihres Browsers überprüfen, um diese Ursache auszuschließen.

DNS-Probleme

Ein 504-Gateway-Timeout-Fehler kann auch durch DNS-Probleme auf der Serverseite oder der Clientseite (oder beiden) verursacht werden.

Der wahrscheinlichste Grund für ein serverseitiges DNS-Problem ist, dass der FQDN (vollständig qualifizierter Domänenname) nicht die richtige IP-Adresse auflöst oder der DNS-Server nicht antwortet . Normalerweise tritt dies auf, wenn Sie Ihre WordPress-Site gerade auf einen neuen Server oder Host migriert haben. Daher ist es wichtig zu warten, bis die DNS-Einträge der Domain vollständig weitergegeben wurden, was bis zu 24 Stunden dauern kann.

Sie können kostenlose Tools wie whatsmydns.net DNS Checker oder DNSMap verwenden, um zu sehen, ob sich Ihr DNS weltweit verbreitet hat.

Überprüfung der DNS-Propagation für Ihre Domain auf whatsmydns.net
Überprüfung der DNS-Propagation für Ihre Domain auf whatsmydns.net

Um clientseitige DNS-Probleme zu beheben, können Sie versuchen, Ihren lokalen DNS-Cache zu leeren. Es ist wie das Löschen Ihres Browser-Cache, außer dass Sie hier den DNS-Cache aus dem Betriebssystem leeren.

Wenn Sie Windows verwenden, können Sie den DNS-Cache leeren, indem Sie die Eingabeaufforderung öffnen und die folgende Anweisung eingeben:

 ipconfig /flushdns
Leeren des DNS-Cache mit der Eingabeaufforderung
Leeren des DNS-Cache mit der Eingabeaufforderung in Windows

Sie sollten die Meldung „DNS-Resolver-Cache erfolgreich geleert“ sehen. Nachricht ob es geklappt hat.

Für die neuesten macOS-Versionen können Sie das Terminal öffnen und den folgenden Befehl ausführen:

 sudo killall -HUP mDNSResponder

Sie sehen in macOS keine Benachrichtigung, wenn der Vorgang abgeschlossen ist, aber Sie können dies ändern, indem Sie den Befehl mit Ihrer benutzerdefinierten Nachricht anhängen.

 sudo killall -HUP mDNSResponder; DNS Cache was cleared successfully

Wenn Sie ältere macOS-Versionen verwenden, variiert der Befehl, den Sie eingeben müssen, je nachdem, welche Version von macOS Sie ausführen. Weitere Einzelheiten findest du im macOS-Abschnitt in Kinstas ausführlichem Flush-DNS-Tutorial.

Wenn Sie das Linux-Betriebssystem verwenden, ist der Prozess ziemlich ähnlich wie bei macOS, da selbst Linux das Terminal als Befehlszeilenschnittstelle verwendet. Da es viele Linux-Distributionen gibt, kann der genaue Befehl, den Sie ausführen müssen, von einer Distribution zur anderen variieren. Weitere Informationen findest du im Leitfaden von Kinsta.

Schließlich können Sie Ihre clientseitigen DNS-Server vorübergehend ändern. Standardmäßig weist Ihnen Ihr ISP die DNS-Server automatisch zu. Sie können diese jedoch vorübergehend in öffentliche DNS-IPs ändern.

Einige zuverlässige DNS-Server, die Sie ausprobieren können, sind Google Public DNS, Cloudflare 1.1.1.1, Quad9 DNS und Cisco OpenDNS.

Einstellungen benutzerdefinierter DNS-Server in Windows 10
Einstellungen benutzerdefinierter DNS-Server in Windows 10

Deaktivieren Sie das CDN Ihrer Website vorübergehend

Manchmal könnte das Problem auch bei Ihrem Content Delivery Network (CDN) liegen. Wenn der Ursprungsserver einer Website nicht erreichbar ist, versuchen die meisten CDNs, die vollständige Webseite aus ihrem Cache bereitzustellen.

Aber die meisten CDNs aktivieren diese Funktion nicht standardmäßig, da es komplex ist, dynamische Assets auf den meisten Websites zwischenzuspeichern (z. B. das WordPress-Admin-Dashboard).

Einstellen der Seitenregel „Cache Everything“ in Cloudflare
Festlegen der Seitenregel „Cache Everything“ in Cloudflare

Eine einfache Möglichkeit, dies zu beheben, besteht darin, Ihr CDN vorübergehend zu deaktivieren. Wenn Sie beispielsweise das kostenlose CDN Enabler WordPress-Plugin verwenden, um Ihre Website-Assets mit den CDN-URLs zu verknüpfen, können Sie das Plugin deaktivieren und das Neuladen Ihrer Website testen.

Das Gleiche gilt für die Verwendung aller anderen Plugins, die Sie verwenden, um sich mit Ihrem CDN zu verbinden (z. B. WP Rocket, Breeze, W3 Total Cache).

Wenn Sie nicht auf das Admin-Dashboard Ihrer Website zugreifen können, können Sie das Plugin über SFTP deaktivieren, indem Sie den Ordnernamen des Plugins umbenennen.

Deaktivieren Sie alle Plugins über SFTP, indem Sie den Namen des Plugin-Ordners umbenennen
Deaktivieren Sie alle Plugins über SFTP, indem Sie den Namen des Plugin-Ordners umbenennen

CDNs wie Cloudflare oder Sucuri, die vollständige Proxy-Dienste bereitstellen, haben zusätzliche Firewalls zwischen ihren Edge-Servern und Ihrem Ursprungsserver. Daher können bei der Verwendung häufiger HTTP 5xx-Fehler auftreten. Die meisten von ihnen speichern 5xx-Fehler, die von Ihrem Ursprungsserver zurückgegeben werden, sodass sie einfach zu beheben sind.

Der kostenlose Plan von Cloudflare neigt dazu, einen 5xx-Fehler auszugeben. Da es sich um einen vollständigen Proxy-Dienst handelt, gibt es leider keine schnelle Möglichkeit, ihn zu deaktivieren. Aber bevor Sie Cloudflare dafür verantwortlich machen, sollten Sie wissen, dass Cloudflare zwei Varianten des Fehlers 504 Gateway Timeout anzeigt.

504 Gateway Timeout bei Cloudflare (Variation 1)

Cloudflare zeigt Ihnen einen benutzerdefinierten 504-Gateway-Timeout-Fehlerbildschirm an, wenn der Ursprungsserver Ihrer Site mit einer standardmäßigen HTTP-504-Antwort antwortet.

Der benutzerdefinierte Fehler-504-Bildschirm von Cloudflare
Der benutzerdefinierte Fehler-504-Bildschirm von Cloudflare

Hier liegt das Problem bei Ihrem Webserver und nicht bei Cloudflare. Sie können versuchen, das Problem mit den anderen unten genannten Lösungen zu beheben, oder sich an den Support Ihres Hosting-Providers wenden, um technische Hilfe zu erhalten.

504 Gateway Timeout bei Cloudflare (Variante 2)

Wenn Cloudflare den Fehler 504 Gateway Timeout verursacht, wird auf dem Fehlerbildschirm „cloudflare“ erwähnt, was derzeit der Standard-Servername für alle Cloudflare-Assets ist. Normalerweise wird der Fehlerbildschirm wie folgt angezeigt:

504 Gateway-Timeout-Fehler, verursacht durch Cloudflare
Fehlerbildschirm für 504 Gateway Timeout verursacht durch Cloudflare

Da Cloudflare selbst nicht reagiert, sehen Sie hier keinen Fehlerbildschirm der Marke Cloudflare.

Höchstwahrscheinlich ist sich Cloudflare des Problems bereits bewusst und arbeitet bereits an einer Lösung. Sie können dies bestätigen, indem Sie die Cloudflare-Systemstatus-Webseite überprüfen. Alternativ können Sie sich für eine schnellere Lösung an den Cloudflare-Support wenden.

Überprüfen Sie den Cloudflare-Systemstatus unter cloudflarestatus.com
Überprüfen Sie den Cloudflare-Systemstatus unter cloudflarestatus.com

504 Gateway Timeout bei Cloudflare aufgrund großer Uploads

Die Größe Ihrer Uploads auf Ihre Website kann auch ein Grund für die Server-Timeouts sein. Cloudflare begrenzt die Upload-Dateigröße (pro HTTP-POST-Anforderung) auf nur 100 MB sowohl bei Free- als auch bei Pro-Plänen.

Cloudflares „Maximale Upload-Größe“-Grenzen für verschiedene Pläne
Cloudflares „Maximale Upload-Größe“-Grenzen für verschiedene Pläne

Das Problem kann auf der Seite Ihres Hosts oder bei Cloudflare liegen. Sie können die genaue Ursache herausfinden, indem Sie Cloudflare mit Ihrer DNS-Hosts-Datei umgehen und den Upload erneut versuchen.

Wenn Sie Cloudflare mit WordPress verwenden, empfehle ich, das kostenlose Plugin zu verwenden und kritische URLs vom Caching auszuschließen (z. B. das WordPress-Admin-Dashboard). Sie können sich auf Kinstas detaillierten Beitrag zur Konfiguration von Cloudflare-Einstellungen für WordPress beziehen.

Empfohlene Lektüre: So richten Sie Cloudflare APO für WordPress ein.

Serverprobleme (erkundigen Sie sich bei Ihrem Host)

Serverprobleme sind einer der häufigsten Gründe für einen 504 Gateway Timeout-Fehler. Da die meisten WordPress-Sites auf Nginx- oder Apache-Webservern gehostet werden, wartet Nginx oder Apache auf eine Antwort von irgendetwas und es kommt zu einer Zeitüberschreitung.

Viele Kunden kommen wegen genau dieses Problems, mit dem sie bei anderen WordPress-Hosts konfrontiert sind, zu Kinsta. Das Gespräch läuft in etwa so ab:

Wir haben rund 100.000 Besucher pro Monat mit mehr als 200.000 Aufrufen. Derzeit hosten wir mit ____ und wir erleben ständig 504-Fehler aufgrund von Serverüberlastung. Mir gefällt nicht, wie ____ mit dem Problem umgegangen ist, und uns wurde auch mitgeteilt, dass wir bald zu ihren dedizierten Plänen wechseln müssen, was meiner Meinung nach nicht notwendig ist.

High-Traffic- und E-Commerce-Sites sind aufgrund von Serverüberlastung anfälliger für 504-Fehler, da sie viele nicht zwischenspeicherbare Anfragen generieren. Dieses Problem kann jedoch bei jeder Website auftreten, einschließlich einfacher Blogs. Viele Hosts werden Sie bitten, auf einen High-Tier-Plan zu aktualisieren, um das Problem zu beheben, was in den meisten Fällen unnötig ist.

Kinsta verwendet LXD-verwaltete Hosts und orchestrierte LXC-Software-Container für jede Site. Somit befindet sich jede WordPress-Site in einem eigenen isolierten Container mit Zugriff auf die gesamte für den Betrieb erforderliche Software (Linux, Nginx, PHP, MySQL). Die Ressourcen sind zu 100 % privat und werden nicht mit anderen Websites geteilt, nicht einmal mit Ihren Websites.

Die meisten WordPress-Hosts, die gemeinsame Hosting-Pläne anbieten, verfügen nicht über diese Funktion. Daher kann eine stark frequentierte Website, die auf demselben Server wie Ihrer gehostet wird, dazu führen, dass Ihre Website ebenfalls einen 504-Fehler ausgibt.

Abgesehen davon, dass jeder Standort in seinem Container isoliert wird, hat Kinsta seine Infrastruktur auch so konzipiert, dass Tausende von gleichzeitigen Verbindungen problemlos verarbeitet werden können. Kinsta hostet sogar die MySQL-Datenbanken auf localhost, nicht auf einem Remote-Server. Dies bedeutet keine Latenz zwischen Computern, was zu schnelleren Abfragen und weniger Wahrscheinlichkeiten von Zeitüberschreitungen führt.

Viele Kunden, die zu Kinsta migrieren, sehen eine enorme Verkürzung der Gesamtladezeiten.

Eine Leistungssteigerung von 212,5 % nach dem Wechsel zu C2.
Eine Leistungssteigerung von 212,5 % nach dem Wechsel zu C2.

Ein überlasteter Server ist nicht die einzige Ursache für ein Server-Timeout. Es kann viele andere Gründe für den 504-Fehler geben:

Langsame Serverinfrastruktur

Der Server, den Sie zum Hosten Ihrer WordPress-Site verwenden, verfügt möglicherweise nicht über genügend Ressourcen, um die Last zu bewältigen. Es ist, als würde man ein modernes, grafikintensives Videospiel auf einem jahrzehntealten PC spielen.

Der Server legt einfach beim Versuch, die Website zu bedienen, auf. Die einzige Lösung für dieses Problem ist ein Upgrade auf einen Server mit besserer Infrastruktur. Aus diesem Grund wird selbst der einfachste WordPress-Hosting-Plan von Kinsta eine statische Seite mit mittlerem Datenverkehr handhaben.

Benötigt mehr PHP-Worker

PHP-Worker werden verwendet, um den Code Ihrer WordPress-Site auszuführen. Eine E-Commerce-Website mit 50.000 Besuchern pro Monat benötigt viel mehr Ressourcen als ein einfacher Blog mit der gleichen Menge an Traffic. Wenn alle PHP-Worker des Servers beschäftigt sind, bauen sie eine Warteschlange auf.

Wenn die Warteschlange zu groß wird, ignoriert der Server alte Anfragen, was dazu führen kann, dass der Server einen 504-Gateway-Fehler ausgibt. Sie können Ihren Host fragen, ob Sie die Anzahl Ihrer PHP-Worker erhöhen können. Dadurch kann Ihre Website mehrere Anfragen gleichzeitig ausführen.

Firewall-Probleme

Die Firewall Ihres Servers könnte einige Fehler oder eine falsche Konfiguration aufweisen. Vielleicht hindern einige seiner Regeln den Server daran, eine Verbindung ordnungsgemäß herzustellen. Um festzustellen, ob Ihre Firewall der Übeltäter ist, können Sie die Fehlerprotokolle Ihres Servers überprüfen.

Probleme mit der Netzwerkverbindung

Verbindungsprobleme zwischen dem Proxyserver und dem Webserver können zu Verzögerungen bei der Beantwortung von HTTP-Anforderungen führen. Wenn Sie einen Load Balancer verwenden, kann es auch zu Netzwerkverbindungsproblemen kommen.

HTTP-Zeitüberschreitungen

HTTP-Timeouts können auftreten, wenn eine Verbindung zwischen dem Webserver und dem Client zu lange offen gehalten wird. Bei WordPress-Sites geschieht dies normalerweise, wenn WordPress-Importe ausgeführt werden. Eine Möglichkeit, dieses Problem zu lösen, besteht darin, zu einer schnelleren Internetverbindung zu wechseln.

Sie können auch ein Tool mit Unterstützung für WP-CLI verwenden, um die Skripte direkt auf dem Server auszuführen und die HTTP-Verbindung vollständig zu umgehen. Beispielsweise kannst du den WP-CLI-Befehl wp import verwenden, um das WordPress-Importer-Plugin direkt über die Befehlszeilenschnittstelle auszuführen.

Wichtig: 504 Gateway Timeout-Fehler sehen ähnlich aus wie 503 Service Unavailable-Fehler oder 502 Bad Gateway-Fehler. Aber sie sind alle verschieden. Wenn bei Kinsta ein 504-Fehler auftritt, eröffne ein Support-Ticket, um dein Problem sofort zu beheben.

Um die Ausfallzeiten Ihrer Website selbst zu überwachen, können Sie ein Tool wie updown.io verwenden. Es überprüft regelmäßig den Status Ihrer Website (oder eine beliebige URL), indem es eine HTTP-Anforderung an sie sendet. Sie können die Prüfhäufigkeit von 15 Sekunden bis 1 Stunde einstellen. Wenn Ihre Website nicht richtig reagiert, werden Sie per E-Mail oder SMS benachrichtigt.

Überwachen Sie Ihre Website mit updown.io
Überwachen Sie Ihre Website einfach mit updown.io

Mit jedem updown.io-Konto erhalten Sie eine großzügige Menge an kostenlosen Credits, aber wenn Sie nach günstigeren Alternativen suchen, können Sie sich WebGazer oder UptimeRobot ansehen. Mit diesen beiden Tools können Sie die Verfügbarkeit Ihrer Website alle 5 Minuten kostenlos überwachen. Das ist für die meisten Website-Besitzer anständig genug.

Das Dashboard des WebGazer-Website-Überwachungstools
Das Dashboard des WebGazer-Website-Überwachungstools

Durch die Überwachung Ihrer Website erhalten Sie eine Vorstellung davon, wie oft sie ausgefallen ist. Dies ist besonders hilfreich, wenn Sie einen Shared-Hosting-Anbieter verwenden. Die meisten verwalteten WordPress-Hosts erledigen dies automatisch für Sie. Daher ist es immer empfehlenswert, mit ihnen zu gehen.

Eine detaillierte Erklärung findest du in Kinstas Post über die Bedeutung von verwaltetem WordPress-Hosting.

Spam, Bots oder DDoS-Angriffe

Böswillige Angreifer können Ihren Webserver lahmlegen, indem sie zu viele und/oder ressourcenintensive Anfragen senden. Wenn Ihre Website von Bots gespammt wird oder einem DDoS-Angriff ausgesetzt ist, kann dies Ihren Server überlasten und bei vielen echten Benutzern zu 504-Gateway-Timeout-Fehlern führen.

Sie können sich Ihren Serververkehr und Ihre Analysen ansehen, um zu sehen, ob Sie unregelmäßige Muster im Websiteverkehr erkennen können. Wenn du Kinsta zum Hosten deiner Website verwendest, kannst du diese Daten einfach anzeigen, indem du zu deinem MyKinsta Analytics-Dashboard gehst.

MyKinsta Analytics-Dashboard
MyKinsta Analytics-Dashboard

Beginnen Sie Ihre Untersuchung, indem Sie sich die wichtigsten Client-IPs ansehen. Es gibt Ihnen eine Vorstellung davon, wer die maximale Anzahl von Anfragen generiert und von wo. Wenn Ihr Server plötzlich eine enorme Bandbreite verbraucht oder viel Verkehr anzieht, ist dieser Bericht sehr praktisch.

Anzeigen von „Top-Client-IPs“ im MyKinsta-Dashboard
Anzeigen von „Top-Client-IPs“ im MyKinsta-Dashboard

Als Nächstes können Sie sich den Cache-Analysebericht ansehen. Hier können Sie sehen, wie viele Anfragen den Cache umgehen oder verpassen oder aus dem Cache bedient werden. Aus Leistungs- und Stabilitätsgründen möchten Sie so viele Anfragen wie möglich zwischenspeichern, aber das ist nicht immer möglich.

Beispielsweise generieren WooCommerce-Sites viele nicht zwischenspeicherbare Anfragen für Funktionen wie den Warenkorb und den Bestellvorgang.

Der Bildschirm „Cache-Analyse“ in MyKinsta
Der Bildschirm „Cache-Analyse“ in MyKinsta

Schließlich können Sie ein WordPress-Sicherheits-Plugin verwenden, um die Sicherheit Ihrer Website zu verbessern, indem Sie besorgniserregenden Datenverkehr/IPs erkennen und blockieren. Sie können Ihren Host auch bitten, bestimmte IPs zu blockieren.

Kämpfen Sie mit Ausfallzeiten und WordPress-Problemen? Kinsta ist die Hosting-Lösung, die auf Leistung und Sicherheit ausgelegt ist! Sehen Sie sich unsere Pläne an

Abhängig von der Länge und dem Ausmaß des Angriffs könnte dies ein endloser Prozess des Blacklistings von IPs sein, da viele Angreifer ihre IPs und Proxy-Adressen ändern, nachdem sie blockiert wurden.

Hinweis: Kinsta erlaubt seinen Kunden nicht, WordPress-Sicherheits-Plugins zu installieren, da diese einen großen Einfluss auf die Leistung der Website haben können, insbesondere auf ihre Scan-Fähigkeiten. Da Kinsta Load Balancer mit der Google Cloud Platform verwendet, würde das Blockieren von IPs nicht immer wie beabsichtigt funktionieren.

Sie können dedizierte Sicherheitslösungen wie Cloudflare oder Sucuri verwenden, um Ihre Websites vor DDoS-Angriffen und Spambots zu schützen. Weitere Informationen finden Sie in den Artikeln von Kinsta zur Installation von Cloudflare auf Ihrer WordPress-Seite und dazu, wie Sucuri dazu beigetragen hat, einen DDoS-Angriff zu stoppen.

Beschädigte WordPress-Datenbank

Manchmal kann ein 504 Gateway Timeout-Fehler auf eine beschädigte Datenbank zurückzuführen sein, insbesondere auf WordPress-Sites. Typischerweise liegt dies an beschädigten Datenbanktabellen oder -dateien. Manchmal kann dies auch durch ein schwerwiegendes Sicherheitsproblem verursacht werden, z. B. wenn Ihre Website oder Datenbank gehackt wird.

Das Reparieren einer beschädigten WordPress-Datenbank hängt vom Problem ab. Plugins wie WP-DBManager machen es einfach, Datenbankprobleme zu diagnostizieren und zu reparieren. Ich empfehle dir, Kinstas detaillierte Anleitung zur Reparatur von WordPress-Datenbankproblemen zu lesen, um loszulegen.

Überprüfen Sie die Plugins und Designs Ihrer Website

In den meisten Fällen verursachen Plugins und Themes von Drittanbietern keine 504-Fehler. Aber es besteht eine geringe Chance, dass sie Server-Timeouts verursachen, normalerweise durch das Einreihen vieler nicht zwischengespeicherter Anfragen, die vom Plugin/Thema generiert werden. Da dies viele PHP-Worker Ihres Servers bindet, kann es zu 504-Fehlern kommen.

Ein gutes Beispiel für dieses Problem ist WooCommerce, ein Plugin, das installiert wird, um E-Commerce-Funktionen zu WordPress-Sites hinzuzufügen.

Die einfachste Möglichkeit, dieses Problem zu beheben, besteht darin, alle Ihre Plugins zu deaktivieren. Denken Sie daran, dass Sie keine Daten verlieren, wenn Sie nur ein Plugin deaktivieren.

Wenn Sie auf Ihr Admin-Dashboard zugreifen können, können Sie zum Bildschirm „ Plugins “ gehen, im Menü „Massenaktionen“ die Option „ Deaktivieren “ auswählen, alle Plugins markieren und dann auf die Schaltfläche „Anwenden“ klicken. Dadurch werden alle Ihre Plugins deaktiviert.

Plugins in WordPress deaktivieren
Deaktivieren aller WordPress-Plugins über das WP-Admin-Dashboard

Wenn Sie nicht auf Ihren Admin-Bereich zugreifen können, können Sie Plugins über SFTP mit der zuvor beschriebenen Methode deaktivieren. Benennen Sie einfach den Namen des Haupt-Plugin-Ordners um, um alle Plugins in großen Mengen zu deaktivieren.

Nachdem Sie alle Plugins deaktiviert haben, überprüfen Sie, ob Ihre Website ordnungsgemäß geladen wird. Wenn es funktioniert, müssen Sie jedes Plugin aktivieren und die Site testen, nachdem Sie jedes Plugin aktiviert haben.

Stellen Sie schließlich sicher, dass Ihre Plugins, Themes und der WordPress-Kern auf dem neuesten Stand sind. Stellen Sie außerdem sicher, dass auf Ihrem Server die empfohlene Version von PHP ausgeführt wird.

Wenn Sie das Gefühl haben, dass dies zu überwältigend ist, können Sie sich jederzeit an Ihren Gastgeber wenden, um Hilfe zu erhalten. Kinsta verwendet Kinsta APM und andere Fehlerbehebungstechniken, um Kunden dabei zu helfen, einzugrenzen, welches Plugin, welche Abfrage oder welches Skript den Fehler verursachen könnte.

Im schlimmsten Fall, wie einer ineffizienten Abfrage oder fehlerhaftem Code in einem Plugin/Theme, kannst du einen WordPress-Entwickler hinzuziehen, um das Problem zu beheben.

Überprüfen Sie die Fehlerprotokolle

Das Anzeigen von Fehlerprotokollen kann beim Beheben und Debuggen von 504-Fehlern auf Ihrer WordPress-Site sehr hilfreich sein. Dies kann Ihnen helfen, ein Problem auf Ihrer Website schnell einzugrenzen, insbesondere wenn es auf ein anspruchsvolles Plugin auf Ihrer Website zurückzuführen ist.

Wenn du ein Kinsta-Kunde bist, kannst du Fehler leicht in der Protokollanzeige in deinem MyKinsta-Dashboard sehen.

Überprüfen von Fehlerprotokollen im MyKinsta-Dashboard
Überprüfen von Fehlerprotokollen im MyKinsta-Dashboard

Wenn dein Host kein Logging-Tool hat, kannst du den WordPress-Debug-Modus aktivieren, indem du den folgenden Code zu deiner wp-config.php- Datei hinzufügst:

 define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );

Die Konstante WP_DEBUG aktiviert oder deaktiviert den WordPress-Debug-Modus. Es hat zwei optionale Begleitkonstanten, die seine Funktionen erweitern können. Die Konstante WP_DEBUG_LOG weist alle Fehler an, in einer debug.log -Datei im Verzeichnis /wp-content/ gespeichert zu werden. Wenn Sie diese Datei nicht sehen, können Sie jederzeit eine erstellen.

Die Konstante WP_DEBUG_DISPLAY steuert, ob Debug-Protokolle auf der HTML-Seite angezeigt werden. Wenn Sie dies auf „false“ setzen, werden alle Fehler ausgeblendet, aber Sie können die Fehler später überprüfen, da Sie auch WP_DEBUG_LOG als „true“ definiert haben.

Wichtig: Wenn du WP_DEBUG in der Kinsta-Umgebung aktiviert hast, leitet es alle Fehler an die Datei debug.log weiter und nicht an die error.log im MyKinsta-Dashboard.

Sie können die rohen WordPress-Fehlerprotokolldateien auch über SFTP herunterladen. Normalerweise finden Sie Fehlerprotokolle im Stammverzeichnis Ihres Servers in einem Ordner namens „logs“.

Zugriff auf den WordPress-Fehlerprotokollordner über SFTP
Zugriff auf den WordPress-Fehlerprotokollordner über SFTP

Kinsta-Benutzer können den WordPress-Debug-Modus auch über ihr MyKinsta-Dashboard aktivieren. Navigieren Sie dazu zu Sites > Tools > WordPress Debugging und klicken Sie auf die Schaltfläche Aktivieren . Dadurch können Sie PHP-Fehler und -Hinweise sehen, ohne den Debug-Modus über SSH oder SFTP zu aktivieren.

Schließlich können Sie die Server-Log-Dateien überprüfen. Abhängig davon, welchen Server Sie zum Hosten Ihrer WordPress-Site verwenden, befinden sie sich normalerweise an diesen Orten:

  • Apache: /var/log/apache2/error.log/
  • Nginx: /var/log/nginx/error.log/

Weitere Informationen finden Sie in der protokollierungsbezogenen Dokumentation von Apache oder Nginx.

Konfigurieren Sie die Apache- oder Nginx-Einstellungen ordnungsgemäß

Sie können Ihre Serverkonfigurationsdateien bearbeiten, um die Ressourcenlimits für bestimmte Anweisungen zu erhöhen. Dies kann Ihnen helfen, den Fehler 504 Gateway Timeout zu beheben.

Für Apache-Webserver

Fügen Sie zunächst den folgenden Code zu Ihrer httpd.conf hinzu :

 TimeOut 600

Diese Einstellung definiert, wie lange der Server auf bestimmte Anfragen wartet, bevor er sie als Netzwerkzeitüberschreitungsproblem markiert. Der Standardwert beträgt 60 Sekunden (Apache 2.4-Version).

Sie können diese Anweisung nur in Ihre httpd.conf -Datei einfügen, nicht in Ihre .htaccess-Datei. Da die meisten Shared-Hosting-Anbieter Ihnen nicht erlauben, die httpd.conf -Datei zu ändern, können Sie stattdessen versuchen, den Wert der LimitRequestBody-Direktive in Ihrer .htaccess -Datei zu erhöhen.

Fügen Sie dann die folgende Zeile zu Ihrer php.ini -Datei hinzu:

 max_execution_time 300

Der Standardwert der PHP-Direktive max_execution_time beträgt 30 Sekunden. Wenn Sie ihn erhöhen, können die PHP-Skripte Ihrer Website länger ausgeführt werden.

Für Nginx-Webserver

Wenn Sie Ihre WordPress-Sites auf Nginx + FastCGI Process Manager (PHP-FPM) ausführen oder Nginx als Reverse-Proxy für Apache verwenden, können Sie die Servereinstellungen optimieren, um 504-Gateway-Timeout-Fehler zu vermeiden.

504 Gateway-Timeout-Fehler auf Nginx + FastCGI (PHP-FPM)

Zuerst müssen Sie Ihre PHP-FPM-Pool-Konfigurationsdatei bearbeiten. Sie finden es am /etc/php7.4/fpm/pool.d/www.conf auf Ihrem Nginx-Server (der genaue Pfad kann je nach PHP-Version variieren). Alternativ können Sie den folgenden Befehl in Ihrem Terminal ausführen, um die Konfigurationsdatei des PHP-FPM-Pools zu bearbeiten:

 sudo nano /etc/php/7.2/fpm/pool.d/www.conf

Legen Sie als Nächstes die folgende Direktive fest:

 request_terminate_timeout = 300

Danach müssen Sie Ihre php.ini -Datei bearbeiten. Sie finden es unter /etc/php.ini . Öffnen Sie die Datei und fügen Sie den Wert für die Direktive max_execution_time hinzu bzw. ändern Sie ihn auf 300 Sekunden.

 max_execution_time = 300

Fügen Sie schließlich den folgenden Code zum Speicherort Ihrer nginx.conf -Datei hinzu:

 location ~ .php$ { ... fastcgi_read_timeout 300; }

Laden Sie Nginx und PHP-FPM neu, damit die Änderungen wirksam werden.

 sudo service nginx reload sudo service php7.4-fpm reload

Der genaue Code zum Neuladen von PHP-FPM hängt von der auf Ihrem Server installierten PHP-Version ab. Testen Sie Ihre Website, um festzustellen, ob das Problem behoben wurde.

504 Gateway-Timeout-Fehler auf Nginx-Proxy

Wenn Sie Nginx als Reverse-Proxy-Server für Apache verwenden, können Sie es nachsichtiger gegenüber Server-Timeouts machen, indem Sie Ihrer nginx.conf -Datei die folgenden Anweisungen hinzufügen:

 proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600;

Vergessen Sie nicht, Nginx neu zu laden, nachdem Sie Ihre Änderungen vorgenommen haben.

sudo service nginx reload

Andere HTTP-Fehler wie 504 Gateway Timeout

Wie bereits in diesem Artikel erwähnt, ähneln viele andere HTTP 5xx-Fehler dem 504 Gateway Timeout-Fehler. Das liegt daran, dass sie alle auf der Serverseite passieren. Zu diesen Fehlern gehören:

  • 500 Interner Serverfehler
  • 501 Nicht implementierter Fehler
  • 502 Schlechter Gateway-Fehler
  • 503 Dienst nicht verfügbar Fehler

Andere HTTP-Fehler, die durch clientseitige Probleme verursacht werden, wie der 404 Not Found-Fehler, sind ebenfalls wie der 504-Fehler. Weitere Informationen findest du in der detaillierten Anleitung von Kinsta und der Liste der HTTP-Statuscodes.

Wenn Sie nicht wissen, was einen 504-Gateway-Timeout-Fehler verursacht hat, wie können Sie ihn rechtzeitig beheben, um hart verdiente Besucher davon abzuhalten, zu den Websites von Mitbewerbern zu wechseln? Alle Details sind in diesem Beitrag. Zum Twittern klicken

Zusammenfassung

Ihre WordPress-Site kann aus mehreren Gründen vom Fehler 504 Gateway Timeout betroffen sein. In diesem Artikel haben Sie gelernt, wie Sie sie alle beheben können. In der Regel werden diese Fehler durch serverseitige Probleme verursacht. In diesem Fall können Sie sich an Ihren Host wenden und das Problem schnell beheben lassen.

Sie müssen jedoch auch verstehen, dass dieser Fehler auf Plugins, Designs, Dienste von Drittanbietern, ineffiziente Datenbankabfragen oder eine Kombination aus zwei oder mehr davon zurückzuführen sein kann. Wenn Sie die Ressourcen Ihres Servers ausschöpfen (z. B. PHP-Worker), wird empfohlen, Ihre Website auf Leistung zu optimieren.

Wenn Sie immer noch feststellen, dass Ihre Website eine Zeitüberschreitung aufweist, müssen Sie möglicherweise Ihren Hosting-Plan oder die Anzahl der PHP-Worker aktualisieren. Ich empfehle Ihnen, diese Option erst in Betracht zu ziehen, nachdem Sie alle anderen in diesem Artikel beschriebenen Lösungen ausgeschöpft haben.

From simple static sites to complex ecommerce and membership sites, Kinsta's scalable hosting plans are designed to accommodate all types of websites. To learn more about our scalable cloud hosting, check out this article!

Did we miss anything? If you're still finding it difficult to fix the 504 Gateway Timeout error on your WordPress site, leave a comment below.