Meteen naar de inhoud

520-statuscode: wat het betekent en hoe u dit kunt oplossen

  • by
  • Blog
  • 6 min gelezen

Introductie

HTTP-statuscodes zijn als een kort bericht van een webserver, die u vertellen hoe het is gegaan toen deze uw verzoek probeerde af te handelen. U bent waarschijnlijk bekend met veelvoorkomende problemen, zoals 404 Not Found of 500 Internal Server Error. Maar bent u ooit een 520-statuscode tegengekomen? Het is een beetje een niche-, Cloudflare-specifieke code die verwarrend kan zijn als je niet weet wat het betekent of hoe je het kunt oplossen.

Maak je echter geen zorgen: aan het einde van dit artikel ben je een 520-expert. We bespreken precies wat een 520-statuscode betekent, de meest voorkomende oorzaken van deze fout en bruikbare stappen die u kunt nemen om 520's op te lossen en te vermijden, of u nu een website-eigenaar bent of aan webscraping doet. Laten we erin duiken!

Wat is een 520-statuscode?

Ten eerste is het belangrijk op te merken dat een 520 geen officiële HTTP-statuscode is die je in de specificaties vindt. Het is een eigen statuscode gemaakt door Cloudflare, een populaire CDN- en beveiligingsservice die veel websites gebruiken. Je zult dus alleen 520's tegenkomen op sites die Cloudflare gebruiken.

In hun documenten classificeert Cloudflare een 520-statuscode als "Onbekende fout". Handig, toch? In feite betekent dit dat de oorspronkelijke webserver achter Cloudflare heeft gereageerd met iets onverwachts of ongeldigs.

Je kunt Cloudflare zien als een tussenpersoon tussen bezoekers en de daadwerkelijke webserver die een site host. Normaal gesproken neemt Cloudflare een verzoek, geeft het door aan de oorspronkelijke server, krijgt het antwoord en geeft dat terug aan de bezoeker. Maar als de reactie van de oorspronkelijke server abnormaal is of de vereiste informatie ontbreekt, weet Cloudflare niet wat hij ermee moet doen en genereert hij een generieke 520-statuscode.

Veelvoorkomende oorzaken van 520-fouten

Er zijn een aantal redenen waarom u een 520-foutmelding kunt zien. Enkele veel voorkomende oorzaken zijn:

1. De Origin-server is offline – Als de daadwerkelijke webserver achter Cloudflare uitvalt, een time-out krijgt of onbereikbaar is, krijgt u waarschijnlijk een 520.

2. Ongeldig HTTP-antwoord – Webservers moeten correct opgemaakte HTTP-antwoorden retourneren, inclusief statusregel, headers en hoofdtekst. Als er iets misvormd is of ontbreekt, kan dit een 520 activeren.

3. Bugs in webapplicaties – Als de daadwerkelijke applicatiecode die op de oorspronkelijke server wordt uitgevoerd bugs, uitzonderingen of randgevallen bevat die abnormale reacties retourneren, kunnen deze als 520s bij de gebruiker terechtkomen.

4. Ontbrekende vereiste headers – Sommige sites vereisen verzoeken om bepaalde HTTP-headers op te nemen, bijvoorbeeld voor authenticatie, snelheidsbeperking of beveiliging. Als u deze weglaat, kan dit een 520 veroorzaken.

5. Geautomatiseerde verzoeken geblokkeerd – Als een site ongebruikelijke geautomatiseerde verzoekpatronen detecteert, kan het beveiligingssysteem deze verzoeken blokkeren, wat vaak resulteert in een generieke 520 om de werkelijke oorzaak te verbergen.

Kortom, 520's betekenen meestal dat het probleem bij de oorspronkelijke webserver zelf ligt, of dat er in uw verzoek enkele vereiste componenten ontbreken. Het is een vage fout die wat graafwerk kan vergen om de ware bron ervan te achterhalen.

Hoe u 520-fouten kunt oplossen en vermijden

Nu u begrijpt wat een 520-fout betekent en enkele veelvoorkomende oorzaken, wat kunt u er eigenlijk aan doen? Het antwoord hangt ervan af of u de eigenaar bent van de website die een 520 gooit, of dat u een site probeert te schrapen en 520-blokken te vermijden. Laten we voor elk geval enkele tips bekijken.

Voor website-eigenaren

Als u 520-fouten ziet voor uw door Cloudflare ondersteunde website, volgen hier enkele stappen die u kunt nemen om het probleem op te sporen en op te lossen:

Controleer de serverstatus – Zorg er eerst voor dat uw oorspronkelijke server daadwerkelijk actief en bereikbaar is. Gebruik monitoringtools om te controleren of de server responsief blijft en niet overbelast wordt.

Foutlogboeken bekijken – Controleer de foutenlogboeken van uw server op uitzonderingen of abnormale verzoeken die mogelijk onjuiste antwoorden veroorzaken. Los eventuele onderliggende bugs op.

Valideer het antwoordformaat – Controleer of uw applicatiecode altijd correct opgemaakte HTTP-antwoorden retourneert, met status, headers en hoofdtekst. Zorg ervoor dat er rekening wordt gehouden met randgevallen.

Configureer time-outs voor aanvragen – Als sommige verzoeken te lang duren en een time-out optreden, waardoor 520s ontstaan, kunt u overwegen de time-outinstellingen te verhogen of langzame code te optimaliseren.

Test verschillende URL-paden – Kijk of de 520 alleen op specifieke pagina’s of URL-patronen voorkomt. Dat kan helpen bij het isoleren van code die moet worden gerepareerd.

Controleer op ontbrekende headers – Als uw code bepaalde headers verwacht, zoals voor CORS of authenticatie, zorg er dan voor dat deze vereisten op de juiste manier worden gedocumenteerd en afgehandeld.

Het repareren van 520's vanaf de serverkant is vaak een proces van eliminatie, het controleren op veelvoorkomende problemen en het focussen op de reikwijdte en oorzaak. De generieke 520-fout van Cloudflare geeft zelf niet veel aanwijzingen.

Voor webscrapers

Als u een website probeert te scrapen maar wordt geblokkeerd door 520-statuscodes, volgen hier enkele tips om deze te omzeilen:

Controleer op ontbrekende headers – Inspecteer de normale verzoekpatronen van de site en zorg ervoor dat u alle verwachte headers opneemt, zoals User-Agent, Referer, Accept-Language, enz.

Vermijd abnormale verzoekpatronen – Spreid verzoeken uit en bezoek niet te snel een site. Vermijd herhaalde pogingen voor fouten. Willekeurige toegangspatronen.

Gebruik niet-detecteerbare automatiseringstools – Headless browsers zoals poppenspeler zijn gemakkelijk te detecteren. Schakel over naar een niet-detecteerbaar hulpmiddel zoals undetected-chromedriver.

Implementeer proxyrotatie – Roteer de IP-adressen van aanvragen met behulp van een proxyservice om snelheidslimieten en blokkades te voorkomen. Het roteren van datacenter-IP's of residentiële IP's via een provider als ScrapingBee kan IP-verboden helpen voorkomen.

Verifieer de aanvraag-URL's – Zorg ervoor dat de URL's die u opvraagt ​​geldig zijn en niet zijn gewijzigd. Eén enkele typefout kan 520 fouten veroorzaken.

Respecteer robots.txt – Hoewel het niet altijd vereist is, kan het respecteren van de robots.txt-regels van een site vaak helpen om hardhandige blokkeringen te voorkomen die resulteren in 520s.

De sleutel tot het vermijden van 520 blokken tijdens het scrapen is het minimaliseren van zaken die ervoor zorgen dat uw verzoekpatronen er anders uitzien dan die van normale gebruikers. Zorgvuldige snelheidsbeperking, realistische headers en niet-detecteerbare tools zijn de juiste keuze.

Conclusie

Hoewel een 520-statuscode in eerste instantie een vage en mysterieuze fout kan lijken, zou je met de kennis uit dit artikel nu een goed begrip moeten hebben van wat het betekent en hoe je het kunt oplossen.

Onthoud dat 520 betekent dat de oorspronkelijke server een onverwachte reactie heeft gegeven, misschien vanwege een storing, ongeldige HTTP-formattering, ontbrekende beveiligingsheaders of automatische blokkering van verzoeken. Concentreer u als website-eigenaar op de gezondheid van de server, de juiste afhandeling van reacties en duidelijke headervereisten om 520s op te lossen. En als webschraper kunt u uw verzoekpatronen invoeren, niet-detecteerbare tools en proxy's gebruiken en de regels van de site respecteren. Met wat analyse en iteratie zullen die vervelende 520-fouten tot het verleden behoren.

Doe mee aan het gesprek

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *