Gateway Timeout:
Hoe los je een
HTTP 504-fout op?

  1. Home
  2. Handboek
  3. HTTP 504-fout

Een fout in de communicatieketen

Als je een website opstart, is de webserver doorgaans de laatste schakel in een keten van systemen die de HTTP-request verwerken. Om de webserver te ontlasten en een vlotte en vlugge dataoverdracht te verzekeren, regelen netwerk gateways en proxyservers het doorsturen en het beantwoorden van een query. Met andere woorden: op de server die gecontacteerd wordt zijn er op voorhand al verschillende communicatiestations ingesteld. Dit is vooral handig. Valt echter één van de vooraf ingestelde systemen uit of functioneert deze niet, dan kan dit leiden tot een fout in de query. In plaats van de website die je wenst te zien, toont je browser je dan een foutmelding, zoals de ‘HTTP Error 504’ of ‘Gateway Timeout’.

Hieronder bespreken we deze servermelding in detail en leggen we je uit hoe je – als websitebezoeker of als websitebeheerder – een 504 Gateway Error-melding kunt oplossen.


HTTP 504: Wat zit erachter de Hypertext Transfer Protocol-statuscode?

Het Hypertext Transfer Protocol is een van de belangrijkste protocollen voor de overdracht van webinhoud. Het werkt op de toepassingslaag en initieert de communicatie tussen de client – meestal een internetbrowser – en de webserver waarop de gewenste inhoud wordt gehost. Hiervoor communiceert HTTP de hypertext van de webpagina, die de clientsoftware op haar beurt kan omzetten in tekst, afbeeldingen en dergelijke. Deze uitwisseling werkt via berichten, waarbij de client eerst een HTTP-verzoek definieert. De server stuurt vervolgens een antwoord met een statuscode, die bijvoorbeeld informeert over de succesvolle verwerking (HTTP 200) of, zoals in het geval van de 504-foutmelding, een fout aangeeft. De 500-foutmeldingen bevinden zich aan de kant van de server. In ons handboek vind je ook alles over de 502- en de 503-foutmeldingen.

Het HTTP-504-antwoord stelt de client ervan op de hoogte dat een time-out in de verwerking van de request de oorzaak van de storing was. Daarom wordt deze berichtcode ook wel de "Gateway Timeout" genoemd. De afzender van het bericht is de server in de communicatieketen die zijn functie als gateway of proxy niet kon vervullen omdat hij binnen een specifieke tijdsperiode geen antwoord ontving van de volgende server of dienst in dezelfde keten. De beheerder van de website kan bepalen hoe deze foutmelding uiteindelijk in het browservenster van de bezoeker wordt weergegeven. Veelgebruikte 504-foutmeldingen zijn onder andere de volgende:

  • HTTP 504
  • HTTP Error 504: Gateway Timeout
  • Gateway Timeout (504)
  • Gateway Timeout Error
  • 504 Gateway Timeout
  • 504 Error
  • Error 504 Gateway Timeout

Hoe komen 504 gateway timeouts tot stand?

HTTP 504-berichten verschijnen altijd wanneer een tussenliggende server of een netwerkinterface niet in staat is om binnen een bepaalde periode te reageren op het verzoek van de browser. Zoals reeds vermeld, is dit het gevolg van het uitblijven van een antwoord van de volgende schakel in de keten. Daar kunnen verschillende redenen voor zijn:

  1. De proxyserver of de router in het lokale netwerk waar de gebruiker toegang tot heeft, is overbelast of gecrasht en werkt niet meer. In dit geval is de 504-fout zelden beperkt tot één enkele webpagina, maar treedt deze ook op wanneer andere pagina's worden geopend.
  2. Om de prestatie te optimaliseren maakt de opgeroepen website gebruik van een proxyserver. Wanneer deze echter overbelast of zelfs gecrasht is, is hij niet meer bereikbaar voor de vooraf ingestelde internetknooppunten, wat weer leidt tot een time-out van de gateway.
  3. Ook verkeerde proxy-instellingen bij de client of bij de server kunnen verantwoordelijk zijn voor het verschijnen van het HTTP 504-bericht.
  4. Het probleem treft een of meer servers van een internetprovider of een bedrijf. De ontoegankelijkheid heeft dus niets te maken met de router- of proxy-instellingen van de browsergebruiker, noch met die van de beheerder van de website.

De 504 Gateway Timeout fix je zo

Iedereen vindt het vervelend wanneer de opgevraagde pagina niet wordt geladen en er in plaats daarvan een 504-foutmelding verschijnt. Vooral als je bezig bent met iets belangrijks, dan kan een lichte ergernis over de time-out al snel leiden tot regelrechte frustratie. Vooral als je in de cloud werkt en op dat moment niet over een offline alternatief beschikt, is een snelle oplossing essentieel. Hetzelfde geldt wanneer je zelf de verantwoordelijke bent voor een webpagina die onbereikbaar is geworden door problemen met de Gateway Timeout. Een snelle reactie is immers belangrijk om het verlies van online verkeer – en dus ook het verlies aan inkomsten – tot een minimum te beperken.


De 504 Gateway Timeout: hoe los je als internetgebruiker het probleem op?

Als je op een HTTP-fout 504 stuit tijdens het surfen, dan kun je ervan op aan dat dit niet intentioneel is, zoals bijvoorbeeld bij de 503-statuscode die wijst op onderhoudswerkzaamheden. Een Gateway Timeout is bijna altijd het gevolg van een serverprobleem aan de kant van de websitebeheerder of de provider. Hoewel het dus ook mogelijk is dat, zoals reeds vermeld, je router of een van je eigen proxy-instellingen verantwoordelijk is voor de foutmelding. Dit betekent dat je als browsergebruiker verschillende opties hebt om een HTTP 504-fout op te lossen:

Oplossing 1: Herlaad de webtoepassing die je wenst te zien

In de meeste gevallen is een 504-foutmelding slechts van vrij korte duur. Een snelle en eenvoudige oplossing is dan ook eenvoudigweg de gewenste webpagina te verversen. Hievoor is één klik op de refresh-knop in de adresbalk van de browser voldoende. Ook de toets [F5] of de combinatie [Ctrl] + [R] zijn gemakkelijke shortcuts hiervoor. Je kunt natuurlijk ook de URL opnieuw invoeren.

Oplossing 2: Herstart alle netwerkapparaten

Als de time-out voorkomt terwijl je op een thuisnetwerk surft, kan het probleem vaak worden opgelost door al je netwerkapparaten te resetten. Het kan immers zijn dat de modem, de router of een ander apparaat verkeerd geconfigureerd is of om een andere reden niet goed werkt. Hierdoor kan het voorkomen dat de HTTP-request van de browser niet binnen de opgegeven tijdsperiode wordt uitgevoerd. Een duidelijk teken dat dit hoogstwaarschijnlijk het probleem is, is als je ook andere pagina’s in je browser niet kunt laden en telkens de HTTP 504-foutmelding te zien krijgt.

Oplossing 3: Controleer je proxyserver-instellingen

Wanneer je een proxyserver gebruikt bij het surfen en je de 504-fout niet kunt herstellen door de pagina te verversen of de browser opnieuw te starten, moet je de relevante instellingen in je browser controleren. Ten eerste kan het zijn dat de configuratie fouten bevat. Het kan daarnaast nodig zijn dat je een andere proxy selecteert, omdat de server die je tot nu toe hebt gebruikt niet meer beschikbaar is of technische problemen ondervindt. In dit geval zullen meestal specifiekere berichten verschijnen, zoals “Proxyserver reageert niet” of “Proxyserver weigert verbinding te maken”. In ons artikel over proxy-instellingen laten we zien hoe je deze kunt aanpassen in je browser.

Oplossing 4: Verander van DNS-server

Het kan ook zijn dat de DNS-server die door de router wordt gebruikt verantwoordelijk is voor de 504 Gateway Timeout. Zodra je verbinding maakt en dus online bent, wijst je internetprovider je automatisch een primaire en secundaire server toe, maar het is ook mogelijk om je eigen DNS-server te kiezen. Beide varianten zijn geenszins een garantie tegen falen, wat betekent dat een time-out tijdens het verbinden met de DNS-server altijd kan voorkomen. In zo'n situatie kan een overstap naar een andere – gratis en openbare – DNS-server de perfecte oplossing zou kunnen zijn. In het volgende artikel lees je welke stappen je moet nemen om van DNS-server te veranderen.

Oplossing 5: Neem contact op met de websitebeheerder en/of met je provider

Het kan jammer genoeg gebeuren dat de wijzigingen in je eigen hardware en software het probleem niet oplossen. In dit geval moet je rechtstreeks contact opnemen met de beheerder van de website of de administrator die verantwoordelijk is voor de site. Het kan zijn dat de oorzaak van de HTTP 504-fout bij de webpagina zelf ligt. Zo verneem je uit eerste hand wat het probleem is, evenals wanneer de website naar verwachting weer online gaat. Als de fout alleen bij jou of een specifieke groep gebruikers optreedt, dan is het zeer waarschijnlijk dat er een probleem is met een server van je internetprovider. Als dit zo is, dan heb je geen andere keuze dan contact op te nemen met hen.

Let op!
Als de website in kwestie erg populair is, dan kan het de moeite waard zijn om een kijkje te nemen op social media, zoals Twitter. Bedrijven gebruiken dit medium regelmatig om problemen die zij op dat moment op hun website ervaren, te communiceren. Bovendien is dit voor jou ook een manier om snel te weten te komen of andere gebruikers met hetzelfde probleem zitten. In dergelijke gevallen zullen hashtags zoals #websitedown (bijvoorbeeld #facebookdown) vaak trending zijn.


Oplossing 6: Probeer het later opnieuw

Soms is het simpel. Ongeacht welke server in de communicatieketen wordt gebruikt, of ongeacht de reden waarom deze de query niet verder kan verwerken, er is niets dat individueel genomen maatregelen zoals herstarten, etc. kunnen doen om een HTTP-fout 504 op te lossen. Je kunt alleen maar wachten tot de beheerder van de website of de verantwoordelijke provider het probleem heeft opgelost. Als een website de foutmelding langer of zelfs met regelmatige tussenpozen weergeeft, dan is het raadzaam om jezelf te behoeden voor nog meer gedoe en op een later tijdstip terug te keren naar de website.


De 504-foutmelding: Hoe los je het probleem op als websitebeheerder?

Als websitebeheerder wil je je bezoekers natuurlijk zowel de best mogelijke content als een zeer goede gebruiksvriendelijkheid bieden. Tegelijkertijd is het belangrijk dat je website goed bereikbaar is. Zo moet je zorgen voor een stabiele hostingomgeving, je site te beschermen tegen malware en spam, en snel reageren op technische problemen, zoals de 504 gateway timeouts. Idealiter moet een dergelijk probleem zo snel mogelijk aan het licht komen, zodat je meteen aan de slag kunt kunnen gaan om de oorzaak te identificeren en de juiste oplossing te vinden.

Oplossing 1: Verhoog de capaciteit van je proxyserver

In veel gevallen kan de eigen proxyserver de oorzaak zijn van een HTTP-fout 504. Dus in het geval dat je – om de webserver te ontlasten – een proxy gebruikt voor je website, kan het zijn dat die verantwoordelijk is voor de Gateway Timeout. Het kan ook zijn dat je website in korte tijd een erg sterke groei heeft doorgemaakt en het aantal bezoekers toegenomen is. In dit geval moet de proxy over de nodige resources beschikken om het hogere aantal HTTP-requests te kunnen verwerken. Hetzelfde geldt voor specifieke bezoekerspieken die het gevolg zijn van seizoensgebonden evenementen, zoals Kerstmis.

Wanneer je bezoekersaantallen zijn toegenomen en er bij veel verkeer op je site 504-foutmeldingen verschijnen, dan is dit een vrij duidelijke indicator dat de server overbelast is. De oplossing is dan om extra hardware aan te schaffen of in gebruik te nemen bij je hostingprovider. Wanneer je bezoekerspieken verwacht, regel je de extra capaciteit het beste vooraf, zodat je elke time-out als gevolg van onvoldoende serververmogen of serverruimte kunt vermijden. Dit is vooral eenvoudig als je vanaf het begin kiest voor een flexibele oplossing, zoals cloud hosting. Hierdoor kun je je proxyserver versterken met permanente of tijdelijke extra capaciteit, zodat alle inkomende HTTP-verzoeken zonder risico op problemen of, nog belangrijker, risico op 504-foutmeldingen kunnen worden verwerkt.

Oplossing 2: Pas de proxyserverinstellingen aan

Een probleem met de proxyserver is niet altijd te wijten aan een gebrek aan resources. Het is net zo waarschijnlijk dat de server verkeerd geconfigureerd is en dat daarom de verwerking van client queries niet werkt zoals het zou moeten. Dit is vaak zo met de configuratie-gerelateerde 504 Gateway Timeout bij NGINX-proxyservers. Dit kan meestal verholpen worden met een paar kleine, extra ingaven in het configuratiebestand.


proxy_connect_timeout 600;
proxy_send_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;

Ook wanneer je NGINX gebruikt in combinatie met FastCGI (php-fpm) is een HTTP 504-fout mogelijk. Dit probleem kan echter gemakkelijk verholpen worden met een paar aanpassingen: verhoog de waarde voor de ‘max_execution_time’ in het fpm/php.ini-bestand en voer dezelfde waarde in bij de 'request_terminate_timeout'-waarde in het fpm/pool.d/www.conf-bestand. Hierna zou je nginx.conf moeten vinden in het blok 'location ~ \ php$', waarop je het volgende moet invoeren:

fastcgi_read_timeout 300;

Uiteindelijk zorgen beide oplossingen voor het resetten van NGINX, met als doel de 504 Gateway Timeout te herstellen door deze wijzigingen uit te voeren:

service nginx reload

Oplossing 3: Controleer het contentmanagementsysteem en de databases

De oorzaak van de 504 Gateway Timeout heeft niet altijd te maken met de serversoftware. Als het verwerken van de HTTP te lang duurt, kan dit ook te wijten zijn aan je contentmanagementsysteem, je databasesysteem en/of andere toepassingen die niet correct werken. Als je bezoekers regelmatig geconfronteerd worden met de foutmelding, kan daar het probleem liggen. Net als bij de proxyservers, is de meest voorkomende oorzaak meestal een verkeerde configuratie; deze moet worden geïdentificeerd en zo nodig aangepast. Het gebruik van defecte of verouderde plugs-ins is vooral bij CMS-fouten vaak de oorzaak. Deze moeten dan worden gedeactiveerd of bijgewerkt.

Let op!
Een effectieve manier om jezelf te beschermen tegen HTTP 504-fouten is om regelmatig een back-up te maken van al je databases en je CMS, en altijd op tijd updates te installeren. De keuze van de extensies die je het beste kunt gebruiken is afhankelijk van factoren zoals het up to date zijn, de betrouwbaarheid en de compatibiliteit. Daarnaast is het ook aan te raden om het aantal plug-ins relatief laag te houden, zodat het contentmanagementsysteem niet met meer resources te maken krijgt dan gepland.


Oplossing 4: Neem contact op met de webhost of met je internetprovider

Als elke vooraf vermelde poging om een 504 Gateway timeout op te lossen mislukt is, dan is het zeer waarschijnlijk dat het probleem niet bij je eigen applicaties ligt, en dus niet jouw verantwoordelijkheid is. In dit geval is het een server binnen de communicatieketen, die beheerd wordt door je internetprovider of hostingprovider, die in gebreke blijft. Dan rest je niets anders dan een van beide te contacteren en hen te vragen het probleem te herstellen. Vraag zeker ook hulp als je website geïnfecteerd is door malware of een spamprobleem heeft, en hierdoor 504-fouten ontstaan.