Errors gebeuren – er is onverwacht onderhoud, een bug die onopgemerkt bleef, of een pagina gaat viral en de vloedgolf van verbindingen haalt de server onderuit.

Als je al een tijdje online bent, heb je ongetwijfeld de ietwat vage 503 Service Unavailable-fout gezien.

In dit artikel gaan we in op HTTP-statuscodes, wat de 503-fout betekent, en enkele mogelijke manieren om deze op te lossen – zowel voor een site die u probeert te bezoeken als voor uw eigen site.

Een overzicht van HTTP-statuscodes

Servers die webpagina’s hosten, luisteren naar verzoeken van webbrowsers of apparaten, ook wel clients genoemd. De server gebruikt vervolgens een aantal verschillende statuscodes om terug te communiceren.

Deze statuscodes zijn onderverdeeld in verschillende klassen, die worden aangegeven door het eerste nummer van de statuscode:

  • 1xx: Informatie – de server is het verzoek nog aan het verwerken
  • 2xx: Succes – het verzoek is geslaagd en de server antwoordt met de pagina of de bron
  • 3xx: Redirection – de pagina of bron is verplaatst en de server antwoordt met de nieuwe locatie
  • 4xx: Client error – er is een fout in het verzoek van de browser of het apparaat
  • 5xx: Server error – er is een fout met de server

De laatste twee cijfers van elke HTTP-statuscode vertegenwoordigen een meer specifieke status voor elke klasse. 301 betekent bijvoorbeeld dat een pagina of bron permanent is verplaatst, terwijl 302 betekent dat de verplaatsing tijdelijk is.

Kijk op deze pagina voor een lijst met veelvoorkomende HTTP-statuscodes en hun betekenis: https://en.wikipedia.org/wiki/List_of_HTTP_status_codes

De meeste statuscodes gaan ongemerkt voorbij, wat prima is omdat het betekent dat alles werkt. Pas als u in de 4xx-5xx-reeks komt, kunt u een statuscode opmerken omdat u een pagina als deze te zien krijgt:

Een typische 503-foutpagina – Bron: Stack Overflow

Nu je een basiskennis hebt van HTTP-statuscodes, laten we wat dieper ingaan op de 503 Service Unavailable-fout.

Wat betekent de 503-foutcode?

Zoals hierboven vermeld, betekenen 5xx-statuscodes dat er een probleem is met de server zelf.

Een 503 Service Unavailable-fout betekent dat de pagina of bron niet beschikbaar is. Er zijn vele redenen waarom een server een 503-fout kan retourneren, maar enkele veel voorkomende redenen zijn onderhoud, een bug in de code van de server, of een plotselinge piek in het verkeer waardoor de server wordt overweldigd.

Het bericht dat wordt verzonden met de 503 fout kan variëren, afhankelijk van de server waar het vandaan komt, maar hier zijn enkele van de meest voorkomende die je zult zien:

– 503 Service Unavailable
– 503 Service Temporarily Unavailable
– HTTP Server Error 503
– HTTP Error 503
– Error 503 Service Unavailable
– De server is tijdelijk niet in staat om aan uw verzoek te voldoen als gevolg van onderhoud downtime of capaciteitsproblemen. Probeer het later nog eens.
Source

Wat de reden voor de 503 fout ook is, het is meestal tijdelijk – de server zal herstarten, het verkeer zal afnemen, en het probleem zal zichzelf oplossen.

Hoe de 503 status niet beschikbaar fout op te lossen

Bij het proberen om een 503 fout op te lossen, zijn er twee algemene kampen.

De eerste is waar je een eindgebruiker bent, en je probeert een site te bezoeken die je niet bezit. In de tweede, je eigenaar bent van de site, en het is het gooien van 503 fouten aan mensen die proberen te bezoeken.

De methode om 503 fouten op te lossen is verschillend, afhankelijk van welke groep je valt. Laten we eens kijken naar een aantal dingen die je kunt doen als eindgebruiker als je een 503 fout ziet.

Hoe los je een 503 status niet beschikbaar fout op als eindgebruiker

Sinds 5xx statuscodes betekenen dat de fout aan de server-kant is, is er niet veel wat je direct kunt doen.

Ondanks dat 503 fouten meestal tijdelijk zijn, zijn er toch een paar dingen die je kunt doen terwijl je wacht.

#1: Vernieuw de pagina

Soms is de fout zo tijdelijk dat een simpele refresh voldoende is. Met de pagina open, druk gewoon op Ctrl – R op Windows en Linux, of Cmd – R op macOS om de pagina te verversen.

#2: Kijk of de pagina down is voor andere mensen

Het volgende wat je kunt doen is een service gebruiken zoals Is It Down Right Now? of Down For Everyone Or Just Me om te zien of andere mensen dezelfde foutmelding krijgen.

Ga gewoon naar een van deze sites en voer de URL in voor de pagina die je probeert te bezoeken.

De service zal de URL die je hebt ingevoerd pingen om te zien of het een reactie krijgt. Vervolgens krijg je een aantal coole statistieken en grafieken over de pagina te zien:

Checking freeCodeCamp on Is It Down Right Now?

Als je een beetje naar beneden scrollt, zie je een aantal reacties van andere mensen. Vaak geven mensen hun algemene locatie en andere gegevens, dus dit kan een goede manier zijn om te bepalen of de fout alleen bepaalde regio’s of specifieke apparaten treft.

#3: Start uw router opnieuw op

Soms heeft het probleem te maken met een DNS-serverstoring.

DNS staat voor Domain Name System, en ze fungeren in feite als vertalers tussen IP-adressen en door mensen leesbare URL’s.

U kunt bijvoorbeeld Google bezoeken door zijn lange IP-adres rechtstreeks in te voeren (172.217.25.206), of u kunt gewoon de URL invoeren, www.google.com.

Het is een DNS, vaak gehost op een server, die dat allemaal achter de schermen afhandelt.

Dat wil zeggen, veel routers cachen reacties van DNS-servers (www.google.com <==> 172.217.25.206). Maar soms kan deze cache beschadigd raken en fouten veroorzaken.

Een gemakkelijke manier om de cache te resetten of te “flushen” is door je router opnieuw op te starten. Haal de stekker van de router er ongeveer 5 seconden uit en steek de stekker er weer in.

Het zou na een minuut opnieuw moeten opstarten en al je apparaten zouden automatisch weer verbinding moeten maken. Zodra ze dat doen, probeer de site opnieuw te bezoeken.

Hoe los je een 503 status niet beschikbaar fout op als eigenaar van de site

Als u de eigenaar / ontwikkelaar bent van de site die 503 fouten retourneert, is er een beetje meer dat je kunt doen om het probleem te diagnosticeren en op te lossen.

Hier zijn enkele algemene tips om je op weg te helpen:

#1: Herstart de server

Ontwikkeling is moeilijk – zelfs een eenvoudige statische pagina kan zo veel bewegende delen hebben dat het moeilijk kan zijn om vast te stellen wat de oorzaak is van de 503 fout.

Soms is het het beste om de server opnieuw op te starten en te kijken of dat het probleem verhelpt.

Bron: imgflip

De exacte methode om je server opnieuw op te starten kan variëren, maar meestal kun je dit doen via het dashboard van je provider of door met SSH naar de server te gaan en een herstartcommando uit te voeren.

De server zou na een paar minuten opnieuw moeten opstarten. Als je alles hebt geconfigureerd om automatisch op te starten, kun je je site bezoeken en kijken of het werkt.

#2: Controleer de server logs

Het volgende wat je moet doen is de logs controleren.

De locatie van de server logs kan variëren, afhankelijk van welke service je draait, maar ze zijn vaak te vinden in /var/log/....

Kijk eens rond in die directory en kijk of je iets kunt vinden. Zo niet, kijk dan in de handleiding van uw programma’s door man program_name.

#3: Controleer of er doorlopend geautomatiseerd onderhoud

Sommige service providers bieden geautomatiseerde pakketupdates en onderhoud aan. Normaal gesproken is dit een goede zaak – ze vinden meestal plaats tijdens downtime, en helpen ervoor te zorgen dat alles up-to-date is.

Occasioneel zijn 503 fouten het gevolg van deze geplande onderhoudssessies.

Bijv. sommige hostingproviders die gespecialiseerd zijn in WordPress-hosting, werken WP automatisch bij als er een nieuwe release is. WordPress geeft automatisch een 503 Service Unavailable foutmelding wanneer het wordt bijgewerkt.

Controleer met uw service providers om te zien of de 503 fout wordt veroorzaakt door gepland onderhoud.

#4: Controleer de firewall instellingen van uw server

Soms worden 503 Service Unavailable fouten veroorzaakt door een verkeerd geconfigureerde firewall waar verbindingen door kunnen komen, maar er niet in slagen om terug naar de client te komen.

Jouw firewall kan ook speciale instellingen nodig hebben voor een CDN, waar meerdere verbindingen van een kleine handvol IP-adressen verkeerd kunnen worden geïnterpreteerd als een DDoS-aanval.

De exacte methode voor het aanpassen van de instellingen van je firewall hangt af van een heleboel factoren. Kijk in uw pijplijn en in de dashboards van uw serviceprovider om te zien waar u de firewall kunt configureren.

#5: Controleer de code

Bugs, net als fouten, gebeuren. Hoe je ook probeert, het is onmogelijk om ze allemaal te vangen. Soms kan er een tussendoor glippen en een 503 fout veroorzaken.

Als je al het andere hebt geprobeerd en je site nog steeds een 503 Service Unavailable foutmelding geeft, kan de oorzaak ergens in de code zitten.

Controleer alle server-side code, en let vooral op alles wat met reguliere expressies te maken heeft – een kleine regex bug veroorzaakte een enorme piek in CPU-gebruik, uitval en ongeveer drie dagen van paniek voor ons op freeCodeCamp.

Hopelijk zul je in staat zijn om de boosdoener op te sporen, een fix te implementeren, en alles zal weer normaal zijn.

In samenvatting

Dit zou alles moeten zijn wat je moet weten over 503 Service Unavailable fouten. Hoewel er meestal niet veel is dat u kunt doen wanneer u een 503-fout ziet, hopelijk helpen enkele van deze stappen de volgende keer dat u er een tegenkomt.

Blijf veilig, en gelukkig refreshen-totdat-het-werkt 🙂