Elke internetgebruiker heeft het wel eens meegemaakt. Je klikt op een link, wacht even en in plaats van de verwachte pagina krijg je een kale foutmelding te zien: 502 Bad Gateway. Frustrerend, vooral omdat de melding zo weinig zegt. Zodra je begrijpt wat er achter die fout schuilgaat, wordt het echter een stuk eenvoudiger om het probleem snel te diagnosticeren en op te lossen.
Wat een 502 daadwerkelijk betekent
De HTTP-502-statuscode is formeel omschreven als een server-side fout waarbij een gateway of proxy een ongeldig antwoord ontvangt van de upstream server die hij probeert te bereiken. De oorzaak zit dus achter de tussenlaag, niet bij je browser of apparaat.
Concreet gezegd: één server stelt een vraag aan een andere server en krijgt een kapot of onleesbaar antwoord terug. Het probleem ligt niet bij de gebruiker, maar ergens in de infrastructuurketen die het verzoek met de eindbestemming verbindt.
Moderne webapplicaties werken zelden met een rechtstreekse verbinding tussen gebruiker en server. Verzoeken passeren doorgaans meerdere tussenlagen, zoals load balancers, reverse proxies en API-gateways, en elk van die lagen kan al een 502 veroorzaken zodra de communicatie stokt. Begrijpen hoe die lagen op elkaar inwerken is een basisvaardigheid bij problemen met webservers oplossen, zeker wanneer fouten zich onregelmatig voordoen op verschillende endpoints. Weten welke laag verantwoordelijk is, maakt vaak het verschil tussen een oplossing in vijf minuten en een onderzoek van meerdere uren. Daarom hoort diagnose van serverfouten vanaf het begin een gestructureerde, laag-voor-laag aanpak te volgen.
De 9 meest voorkomende oorzaken
De oorzaak van een 502 achterhalen is de eerste stap naar een oplossing. Dit zijn de negen oorzaken die het vaakst voorkomen op webplatforms:
- Overbelaste upstream server — De origin server ontvangt meer verzoeken dan hij aankan, waardoor time-outs ontstaan voordat er een geldig antwoord wordt verzonden.
- Verkeerd geconfigureerde reverse proxy — Nginx, Apache of een andere proxylaag is ingesteld met onjuiste upstream-adressen of verbindingslimieten.
- Gecrashte applicatieserver — De backendapplicatie (Node.js, PHP-FPM, enzovoort) draait helemaal niet meer.
- Netwerkconnectiviteitsproblemen — Pakketverlies of routeringsfouten tussen de proxy en de origin server verstoren de communicatie.
- Firewall blokkeert upstream-verkeer — Beveiligingsregels op de origin server weigeren verzoeken die afkomstig zijn uit het IP-bereik van de proxy.
- DNS-resolutiefout — De proxy kan de hostname van de upstream server niet omzetten en weet daardoor niet waar het verzoek naartoe moet.
- SSL/TLS-handshakefouten — Certificaatmismatches of verlopen certificaten tussen lagen verhinderen dat er een beveiligde verbinding tot stand komt.
- Storingen bij API’s van derden — Wanneer een externe API waar een platform van afhankelijk is offline gaat, komt de resulterende server-tot-server-communicatiestoring bij de eindgebruiker terecht als een 502, ook al functioneert de eigen infrastructuur van het platform verder prima.
- Mismatch in time-outconfiguratie — De proxy stopt met wachten voordat de origin server klaar is met verwerken. Dit speelt vooral bij trage databasequeries.
De snelste oplossing per oorzaak
Door de oplossing af te stemmen op de specifieke oorzaak bespaar je veel tijd. Hieronder een directe aanpak per scenario:
- Overbelaste server: Schaal horizontaal door extra instances toe te voegen, of implementeer een queuesysteem om het verzoekvolume te beheersen.
- Verkeerd geconfigureerde proxy: Controleer het upstream-blok in het configuratiebestand van de proxy en verifieer of het doeladres en de poort correct zijn.
- Gecrashte applicatieserver: Herstart het applicatieproces en bekijk direct de logs om de oorzaak te achterhalen voordat het opnieuw crasht.
- Netwerkproblemen: Gebruik traceroute of ping tussen servers om te bepalen waar pakketverlies optreedt en schakel de hostingprovider in als het probleem op infrastructuurniveau zit.
- Firewall blokkeert: Zet het IP-adres van de proxyserver op de whitelist in de firewallregels van de origin server.
- DNS-fout: Leeg DNS-caches, verifieer het A-record van de upstream-host en overweeg tijdelijk een statisch IP-adres in de proxyconfiguratie te gebruiken.
- SSL-fouten: Vernieuw of vervang het certificaat op de upstream server en zorg dat de proxy is geconfigureerd om de juiste certificaatautoriteit te accepteren.
- Uitval van API van derden: Implementeer graceful degradation zodat het platform een betekenisvolle response teruggeeft in plaats van een kale 502 wanneer een afhankelijkheid niet beschikbaar is.
- Mismatch in time-outs: Verhoog de time-outwaarde van de proxy zodat die aansluit op de maximaal te verwachten responstijd van de upstream server, met name bij resource-intensieve endpoints.
Wanneer de fout blijft terugkomen
Als de 502 aanhoudt nadat je de lijst hierboven hebt doorlopen, zit het probleem mogelijk dieper in de infrastructuurstack. Monitoringtools die upstream-responstijden bijhouden, maken patronen zichtbaar die je tijdens één losse diagnose nooit oppikt. Bij drukbezochte platforms wijzen aanhoudende 502-fouten bovendien vaker op hiaten in de capacity planning dan op configuratiefouten.
Digitale platforms van allerlei typen krijgen met deze uitdaging te maken, van webshops tijdens piekperiodes tot streamingdiensten bij plotselinge vraagpieken. Online entertainmentplatforms vormen daarop geen uitzondering. Een platform met Wero casino verwerkt bijvoorbeeld realtime betalingen naast live spelsessies, waardoor upstream-storingen meerdere diensten tegelijk kunnen raken. Voor elk platform dat gelijktijdige financiële transacties en gebruikerssessies beheert, zijn robuuste upstream-monitoring en failover-routing geen luxe maar een vereiste.
Een 502 is nooit permanent. Met de juiste diagnoseaanpak en de oplossingen hierboven zijn de meeste gevallen binnen minuten op te lossen in plaats van pas na uren.