
De meeste HTTP-fouten kun je koppelen aan een specifieke oorzaak: 404 betekent dat iets er niet is, 500 dat er iets stuk is aan de serverkant. Maar dan is er nog de 520 status code. Die doet nét even anders. Deze code zie je meestal wanneer je site achter een dienst als Cloudflare draait. Het is geen officiële HTTP-status, maar een eigen toevoeging van reverse proxies zoals Cloudflare wanneer de server iets stuurt wat ze niet kunnen interpreteren.
Kort gezegd: de proxyserver krijgt wél een antwoord terug van jouw server, maar het klopt niet. Of het is leeg, of het is kapot, of het wijkt dusdanig af dat de proxy ermee vastloopt. Het resultaat: de eindgebruiker krijgt een 520 voorgeschoteld. Geen fout die uit de browser komt, en ook niet eentje die rechtstreeks vanaf je server komt. Maar precies ertussenin.
Waarom krijg je een http 520 te zien?
De http 520 fout is eigenlijk een signaal dat er miscommunicatie is tussen twee systemen. De client (browser) stuurt een verzoek naar Cloudflare (of een andere proxy), die dat verzoek doorzet naar jouw server. De server antwoordt, maar doet dat op een manier die de proxy niet snapt of accepteert.
Wat dat in de praktijk betekent? Een paar mogelijkheden:
- De server stuurt een response zonder headers.
- De statusregel ontbreekt of bevat ongeldig formaat.
- Er is een conflict met een plugin of servermodule.
- Een firewall op je server blokkeert inkomende verzoeken van Cloudflare.
- Er wordt geprobeerd een gzip-respons te versturen terwijl er iets corrupt is.
Je merkt: het zijn allemaal dingen die nét buiten de gebruikelijke fouten vallen, en dus bij normale debuggingtools niet direct opvallen. Dat maakt het vinden van de oorzaak soms lastig.
Waar kun je het terugvinden?
Als je gebruikmaakt van tools zoals Screaming Frog, kun je 520 fouten detecteren tijdens het crawlen. De tool categoriseert het als serverfout, maar je zult de exacte oorzaak niet uit de statuscode kunnen afleiden. Daarvoor moet je graven in je eigen serverlogs.
Cloudflare zelf toont de fout vaak als “Web server returned an unknown error”. In de meeste gevallen zit er dan weinig extra informatie bij, tenzij je logboeken activeert of werkt met debuggingheaders.
Hoe los je een 520 foutmelding op?

Er is niet één universele oplossing, maar er zijn wel logische stappen die je kunt nemen om de oorzaak te isoleren:
- Check je serverlogs. Vooral de error logs van Apache of Nginx kunnen hier cruciaal zijn. Zoek naar incomplete responses of foutmeldingen tijdens het renderen van een pagina.
- Herstart je webserver of PHP-service. Soms zijn het tijdelijke glitches die daarmee verdwijnen.
- Controleer firewall- en securityregels. Sommige setups blokkeren de IP-ranges van Cloudflare, wat tot deze fout kan leiden.
- Verwijder of deactiveer recent toegevoegde plugins of extensies. Zeker als het om caching of compressie gaat.
- Zorg dat je headers correct zijn opgebouwd. De meeste proxies verwachten specifieke headers en raken in de war van afwijkende formaten.
In het uiterste geval kun je proberen om Cloudflare tijdelijk te pauzeren (door je DNS direct naar je origin server te laten verwijzen) en te kijken of het probleem dan nog steeds voorkomt. Zo weet je of het probleem aan de kant van Cloudflare zit, of bij je eigen server.
Wat maakt status code 520 lastig?
In tegenstelling tot veel andere foutcodes is de 520 status code niet gestandaardiseerd. Je vindt ‘m niet terug in de officiële HTTP-specs. Daardoor werken veel monitoringtools er niet mee, en krijg je bij sommige hosts ook weinig inzicht in wat er precies gebeurt.
Wat ook meespeelt: 520 is vaak een gevolg van een reeks omstandigheden. Niet één duidelijke fout, maar een opeenstapeling van factoren, een combinatie van headers, servergedrag en netwerkinstellingen. Juist dat maakt het lastig om er één oorzaak aan te hangen.
Samengevat
De 520 status code is een beetje een vreemde eend in de bijt. Het is geen officiële foutmelding, maar een proxy-respons wanneer je server iets onverwachts terugstuurt. Daardoor is het lastig te debuggen, maar met de juiste stappen en tools, zoals Screaming Frog en serverlogs, kom je vaak alsnog tot de kern.
Zie je dus een melding als http 520 of “Web server returned an unknown error”? Dan is de kans groot dat het ergens tussen proxy en server niet helemaal soepel verloopt. Tijd om je headers te checken, je logs door te spitten en je configuratie op te frissen. Want ook al is het geen officiële statuscode, het is wél een fout die je serieus moet nemen.