502 Bad Gateway in WordPress – oorzaken en oplossingen

Een 502 Bad Gateway foutmelding is meestal tijdelijk, maar je wilt snel weten waar het misgaat en hoe je je site weer online krijgt.

Een “502 Bad Gateway” foutmelding op je WordPress-website kan even schrikken zijn. Gelukkig is deze serverfout meestal tijdelijk en oplosbaar. In dit artikel leg ik je duidelijk uit wat de 502 Bad Gateway melding betekent, wat de meest voorkomende oorzaken zijn, en – belangrijker – hoe je het probleem praktisch zelf kunt verhelpen. Zo krijg je je website snel weer online zonder paniek.

Wat is een 502 Bad Gateway foutmelding?

Een 502 Bad Gateway is een HTTP-statuscode die aangeeft dat er iets misgaat tussen twee servers. Simpel gezegd: een server die als gateway of tussenstation voor je website fungeert, krijgt een ongeldig of geen antwoord van de hoofdserver (de server waarop jouw website draait). In plaats van je webpagina te tonen, geeft de gateway-server dan de foutmelding “502 Bad Gateway” door aan je browser.

In de praktijk zie je deze melding vaak als er tijdelijk een communicatieprobleem is. De server kon je verzoek niet correct verwerken of er trad een time-out op. Het resultaat is dat jouw site niet geladen wordt en je een 502 foutpagina ziet. Dit kan op elke website gebeuren – van kleine blogs tot grote diensten – en het betekent niet meteen dat je website permanent kapot is. Hieronder bespreek ik waarom je deze fout mogelijk krijgt en hoe je het oplost.

Veelvoorkomende oorzaken van een 502-fout (en de oplossingen)

Een 502 Bad Gateway ontstaat door communicatieproblemen tussen servers. Maar wat veroorzaakt die problemen? Hieronder vind je de meest voorkomende oorzaken bij WordPress-sites, telkens met een praktische oplossing erbij. Doorloop deze oorzaken één voor één; met een beetje geluk heb je je site zo weer in de lucht.

1. Tijdelijke serverfout

Oorzaak: Vaak is een 502-fout niets meer dan een tijdelijke hik in de server of een korte overbelasting. Misschien was er een plotselinge verkeerspiek op je site, voert de server een herstart uit, of is er kort onderhoud bij je hostingprovider. In zo’n geval krijgt de gateway even geen geldig antwoord van de server, maar dat herstelt zich meestal snel.

Oplossing: Vaak hoef je hier weinig te doen. Wacht een halve minuut tot een minuut en ververs dan de pagina (druk op F5 of klik op de herlaad-knop van je browser). In veel gevallen verdwijnt de foutmelding dan vanzelf. Check eventueel via een externe dienst zoals “Down for Everyone or Just Me” of jouw site voor anderen ook onbereikbaar is – als het alleen bij jou is, kan het een lokaal probleem zijn. Blijft de foutmelding na meerdere minuten en refreshes bestaan? Dan is er meer aan de hand en moet je verder zoeken naar een andere oorzaak (zie hieronder).

2. Fout in .htaccess of PHP-configuratie

Oorzaak: Een verkeerde serverconfiguratie kan ook tot een 502 Bad Gateway leiden. Bij WordPress-sites op Apache-servers wordt veel geregeld via het .htaccess-bestand. Fouten in dit bestand – bijvoorbeeld een onjuiste rewrite-regel of een typefout – kunnen ervoor zorgen dat de server verzoeken niet goed doorgeeft aan de backend, met een 502-fout als gevolg. Ook bepaalde PHP-instellingen (zoals een te strenge geheugenlimiet, verkeerde PHP-versie, of onjuiste PHP-FPM configuratie) kunnen de communicatie tussen serverprocessen verstoren.

Oplossing: Controleer recentelijke wijzigingen in je configuratie: heb je kort geleden handmatig regels aan .htaccess toegevoegd of een plugin geïnstalleerd die dit bestand heeft aangepast? Test of .htaccess het probleem is door het tijdelijk te hernoemen. Via FTP of je hosting bestandsbeheer kun je bij public_html het bestand .htaccess hernoemen naar bijv. htaccess_old. Probeer je site daarna te laden. Doet de site het weer, dan weet je dat er iets mis was met het .htaccess-bestand. Je kunt vervolgens de standaard WordPress .htaccess terugzetten (of WordPress nieuwe laten genereren via Permalinks instellingen) en eventuele extra regels één voor één toevoegen tot je de boosdoener vindt.

Controleer ook je PHP-instellingen. Via het controlepaneel van je host kun je vaak de PHP-versie en -configuratie aanpassen. Zorg dat je een ondersteunde PHP-versie draait en dat instellingen zoals memory_limit niet te laag zijn. Verhoog indien mogelijk de limiet of andere waarden (zoals max_execution_time) binnen redelijke grenzen en test opnieuw. Als je hier niet uitkomt, kan je hostingsupport je vaak vertellen of er fouten in de configuratie staan die de 502 veroorzaken.

3. Problemen met caching of een reverse proxy (bijv. Cloudflare)

Oorzaak: Maak je gebruik van een Content Delivery Network (CDN) zoals Cloudflare, of een andere caching/proxy-service? Dan kan de 502-fout daar zijn oorsprong vinden. Een dienst als Cloudflare plaatst zich tussen de bezoeker en jouw server om content te versnellen en verkeer te filteren. Als deze tussenlaag zelf een probleem heeft of geen goede reactie van jouw server krijgt, ziet de bezoeker een 502 Bad Gateway pagina. Cloudflare heeft bijvoorbeeld twee soorten 502-meldingen: één als Cloudflare zelf plat ligt en één als jouw origin server niet goed reageert op Cloudflare. In beide gevallen krijgt de eindgebruiker “502 Bad Gateway” te zien, soms met een subtiele aanwijzing (“Cloudflare” of “Host Error”).

Oplossing: Controleer de status van je caching/CDN-dienst. Bij Cloudflare kun je de Cloudflare Status pagina raadplegen om te zien of zij storingen hebben. Zie je een Cloudflare-branded foutpagina, dan ligt het probleem mogelijk bij hen – wacht in dat geval even, of neem contact op met Cloudflare support als het lang duurt.

Als het probleem niet evident bij de CDN ligt, focus dan op je eigen server. Een handige stap is tijdelijk je CDN uitschakelen of omzeilen. Bij Cloudflare kun je bijvoorbeeld je DNS-record op “Direct” zetten (oranje wolkje uit) of de “Development Mode” aanzetten, zodat verkeer direct naar je server gaat. Laadt de site dan wél zonder 502-fout? Dan zit het euvel in de interactie met de CDN. Mogelijke vervolgstappen zijn het legen van caches (zowel op je server als bij de CDN) of het nalopen van instellingen zoals firewallregels, SSL-instellingen en DNS-configuratie in de CDN. Pas als alles klopt, schakel je de CDN weer in.

Gebruik je een caching-plugin of proxy op je eigen server (bijv. Varnish of een WordPress caching plugin in combinatie met Nginx)? Ook die kunnen een rol spelen. Probeer de cache te purgen (legen) of de plugin tijdelijk uit te schakelen om te zien of dat verschil maakt. Een misgeconfigureerde cachinglaag kan namelijk leiden tot foutieve responses die de gateway als “Bad” beschouwt.

4. Conflicterende plugins of thema’s

Oorzaak: In WordPress zelf kunnen foutmeldingen zoals 502 optreden door problemen met plugins of het thema. Slecht geschreven of verouderde plugins kunnen onderling conflicteren of fouten veroorzaken die de server laten vastlopen. Bijvoorbeeld: twee plugins die niet goed samenwerken kunnen eindigen in een oneindige loop of zware query, waardoor de server niet meer antwoordt. Ook een defect of incompatibel thema kan soortgelijke problemen geven. In zulke gevallen stopt de server met het uitvoeren van de PHP-scripts en krijg je een 502.

Oplossing: Test of een plugin of thema de boosdoener is door ze tijdelijk uit te schakelen.

Plugins uitschakelen: log in op je WordPress-dashboard en ga naar Plugins. Deactiveer alle plugins in één keer (selecteer alle plugins, kies “Deactiveren” in het bulk-actiemenu, en bevestig). Probeer vervolgens je site te laden. Verdwijnt de 502-fout? Dan ligt het aan één van de plugins. Schakel de plugins één voor één weer in, telkens één plugin activeren en de site verversen. Op het moment dat de 502-fout terugkomt, heb je de conflicterende plugin gevonden. Vervang of update deze plugin, of zoek contact met de ontwikkelaar voor een oplossing.

Geen toegang tot wp-admin? Als je niet in het dashboard kunt door de fout, kun je plugins via FTP of het hostingpanel uitschakelen. Ga naar de wp-content folder en hernoem de map plugins naar bijvoorbeeld plugins_off. Hiermee worden alle plugins gedeactiveerd. Test de site; werkt die weer, dan kun je de map terug naar plugins hernoemen en binnen die folder de verdachte plugin zoeken (hernoem elke individuele pluginmap één voor één totdat de site weer werkt om de dader te identificeren).

Thema controleren: als de plugins het probleem niet lijken te veroorzaken, doe dan iets soortgelijks met je thema. Switch in het dashboard naar een standaard WordPress-thema (bijv. Twenty Twenty-Three) of hernoem de map van je huidige thema via FTP (wp-content/themes). Als een fout in je thema de oorzaak was, zou de site met een standaardthema weer moeten laden. Vervolgens kun je het oorspronkelijke thema updaten of vervangen.

Zorg er altijd voor dat zowel je plugins als je thema’s up-to-date zijn. Veel 502-problemen ontstaan door verouderde code of bugs die in latere updates al verholpen zijn.

5. Overbelasting of time-outs door PHP workers

Oorzaak: Een andere veelvoorkomende reden voor 502-fouten is pure overbelasting van de server of het overschrijden van tijdslimieten. WordPress draait op PHP; elke bezoeker activeert PHP-processen (vaak “PHP workers” genoemd) om pagina’s te genereren. Als je hostingaccount te weinig PHP workers heeft om alle binnenkomende verzoeken aan te kunnen, of als bepaalde processen zó lang duren dat ze de limiet overschrijden, dan gaat de server verzoeken afkappen. In plaats van een pagina krijg je dan een 502 of een verwante time-out fout (soms ook 504 Gateway Timeout). Vooral bij plotseling veel verkeer, zware scripts of onzuinige plugins kan dit gebeuren – de server trekt het simpelweg niet meer.

Oplossing: Hier zijn twee invalshoeken: enerzijds je site optimaliseren, anderzijds de servercapaciteit verhogen. Praktische stappen om meteen te proberen:

  • Optimaliseer je site: kijk of er plugins of functies zijn die erg veel middelen vragen. Bijvoorbeeld, statische pagina’s cacheen (met een caching-plugin) kan het aantal PHP-aanvragen drastisch verlagen. Optimaliseer databasequeries en schakel onnodige plug-ins uit. Monitor eventueel via je hostingsdashboard of een plugin de CPU- en geheugenbelasting van je site om te zien of hij voortdurend tegen het maximum aan zit.
  • Verhoog serverresources indien mogelijk: veel hostingpakketten (vooral gedeelde hosting) hebben limieten op gelijktijdige PHP-processen en geheugen. Als jouw site groeit of veel bezoekers tegelijk krijgt, kun je die limieten bereiken. Overweeg in dat geval een upgrade van je hostingpakket zodat je meer PHP workers en CPU/RAM tot je beschikking hebt. Op een VPS of eigen server kun je bijvoorbeeld het aantal PHP-FPM processen omhoog schroeven. Let op: meer resources kosten vaak meer geld, dus dit is een balans tussen budget en performance. Maar als 502-fouten frequenter worden door drukte, is upgraden of opschalen vrijwel onontkoombaar.
  • Controleer op lange processen: soms is één specifieke actie de boosdoener, zoals een dagelijks cron job, backup-proces of import script dat te lang draait. Check de error logs of gebruik monitoring (bijv. de WordPress plugin Query Monitor of een tool als New Relic) om te zien of er fouten of time-out meldingen zijn rond het moment van de 502. Als er een PHP-fout of script is dat steeds blijft hangen, los die dan op of schakel die functionaliteit tijdelijk uit.

Kortom, voorkom dat je server oververhit raakt. Door je site efficiënter te maken én te zorgen voor voldoende serverkracht, verminder je de kans op 502 Bad Gateway meldingen drastisch.

Conclusie

Een 502 Bad Gateway foutmelding is vervelend, maar meestal tijdelijk en oplosbaar. Ik heb gekeken naar veelvoorkomende oorzaken – van kleine tijdelijke serverhikjes tot configuratiefouten en overbelaste servers – en per geval gezien wat je er zelf aan kunt doen. In de meeste situaties kom je er met de bovenstaande tips gewoon uit en is je WordPress-site snel weer bereikbaar.

Wil je dat dit niet steeds jouw probleem is?

Als storingen blijven terugkomen, is de ‘fix’ vaak consistent beheer: updates, backups en monitoring die niet versloffen.

Bekijk Managed WordPress Hosting