Op een gegeven moment krijgt elke website te maken met een bug of een fout die moeilijk te repareren is. Dat is meestal omdat de foutmelding zelf je weinig informatie geeft. De foutmelding ‘429 Too Many Requests’ is daar een goed voorbeeld van.

Gelukkig weten we wél wat de meest voorkomende oorzaken zijn. Aangezien er helaas wel meerdere potentiële boosdoeners kunnen zijn, zul je meestal meerdere oplossingen moeten proberen voordat het probleem weg is.

In dit artikel gaan we het hebben over de oorzaken van de foutmelding ‘429 Too Many Request’ en hoe de fout eruitziet. Daarna zullen we 5 manieren bespreken waarop je de problemen met je website kunt oplossen als je ooit tegen dit probleem aanloopt. Aan de slag!

Wat is de HTTP 429 fout?

De HTTP 429 fout wordt geretourneerd wanneer een gebruiker binnen een korte tijd te veel verzoeken heeft verzonden. De statuscode 429 is bedoeld voor gebruik met snelheidsbeperkende schema’s.

Wat veroorzaakt de foutmelding ‘429 Too Many Requests’

In sommige gevallen, wanneer je server merkt dat een gebruiker een specifieke pagina te vaak probeert te openen in een korte periode, activeert de server een feature die de hoeveelheid aanvragen beperkt. Het meest voorkomende voorbeeld hiervan is wanneer een gebruiker (of een aanvaller) meerdere malen probeert in te loggen op je site.

Maar je server kan ook gebruikers identificeren door cookies, in plaats van hun inloggegevens. Verzoeken kunnen geteld worden per verzoek, per server, of over meerdere servers. Er zijn dus meerdere situaties mogelijk waardoor je een fout zoals deze ziet:

  • 429 Too Many Requests
  • 429 Error
  • HTTP 429
  • Error 429 (Too Many Requests)

De foutmelding kan ook meer details bevatten over de reden van de 429-foutmelding, en hoe lang de gebruiker moet wachten voordat er een nieuwe inlogpoging gedaan kan worden. Hier is een voorbeeld van hoe dat eruit kan zien:

HTTP/1.1 429 Too Many Requests
Content-type: text/html
Retry-After: 3600
<html>
<head>
<title>Too Many Requests</title>
</head>
<body>
<h1>Too Many Requests</h1>
<p>I only allow 50 requests per hour to this website per logged in user. Try again soon. </p>
</body>
</html>

Onafhankelijk van hoe de foutmelding eruitziet, het betekent altijd hetzelfde – er is een gebruiker of een stuk code dat de server overbelast met verzoeken. Soms gaat het probleem vanzelf weg. In andere situaties, zoals wanneer het veroorzaakt wordt door een plugin of een ‘Denial of Service’ (DDos) aanval, zul je proactief moeten optreden om de foutmelding op te lossen.

Het probleem is dat de 429-foutmelding meestal je inlogpagina raakt, waardoor het je onmogelijk wordt gemaakt om nog in te loggen op het dashboard van je website. Daardoor kan het lastiger worden om het probleem te repareren, maar het is nog steeds goed te doen als je weet wat je moet proberen.

Zo repareer je de foutmelding ‘429 Too Many Requests’ (5 methoden)

Zoals je je voor kunt stellen, hebben wij veel te maken met supportverzoeken voor WordPress, vanwege de aard van de diensten die we aanbieden. Dat betekent dat we goed bekend zijn met de 429-foutmelding en de vele potentiële oorzaken ervan.

In de volgende secties bespreken we 5 van de meest voorkomende oorzaken voor de foutmelding ‘429 Too Many Requests’ bij WordPress. Voor elk potentieel probleem zullen we je ook leren hoe je het kunt oplossen, zodat je website zo snel mogelijk weer draait.

1. Verander de standaard inlog-URL van WordPress

Bruteforce-inlogpogingen zijn één van de meest voorkomende oorzaken van de 429-foutmelding bij WordPress-websites. Een makkelijke manier om te voorkomen dat aanvallers proberen om door je WordPress-inlogpagina heen te breken is om de URL te veranderen van de standaardinstelling, zodat ze deze pagina überhaupt niet kunnen vinden.

Je kunt je inlogpagina standaard vinden door naar jouwwebsite.com/wp-admin te gaan. Dat is lekker simpel te onthouden, maar het is ook erg onveilig aangezien iedereen op het internet precies weet waar ze het moeten vinden.

De makkelijkste manier om de standaard-URL te veranderen is door de gratis plugin WPS Hide Login te gebruiken:

WPS Hide Login plug-in
WPS Hide Login plugin

We doorlopen even het proces van hoe je deze specifieke tool gebruikt. Eerst zul je de plugin willen installeren en activeren net zoals je dat met elke andere plugin zou doen, en daarna ga je naar de tab Instellingen > WPS Hide Login van je WordPress-dashboard.

Het veranderen van de inlog-URL
Het veranderen van de inlog-URL

Hier kun je eenvoudig je inlog-URL veranderen door in te typen wat je wilt gebruiken. Blijf wel weg van makkelijk te raden opties zoals login, wp-login en dergelijke. Dit gaat voorbij aan het idee om je URL te veranderen in iets minder voor de hand liggends, dus je zult iets willen bedenken wat uniek is voor jouw website.

Let op dat deze plugin je ook in staat stelt om gebruikers die je oude inlog-URL bezoeken door te verwijzen naar een andere pagina. De standaardoptie bijvoorbeeld, laat iedereen die probeert /wp-admin te bezoeken een 404-foutpagina zien, zodat ze weten dat ze op de verkeerde plek zoeken. Wanneer je klaar bent, vergeet dan niet om je nieuwe instellingen op te slaan, en dan is het allemaal geregeld.

2. Deactiveer de Simple SSL-plugin en vervang je interne links

Er is tegenwoordig geen goede reden meer waarom je niet een Secure Sockets Layer (SSL) certificaat voor je website zou hebben. Zo moet ook je hele website gewoon over HTTPS laden. Dit is veel veiliger dan het oude HTTP-protocol gebruiken en kan zelfs een positief effect hebben op de Search Engine Optimization(SEO) van je website.

Als het gaat om het afdwingen van het gebruik van HTTPS, kun je óf de handmatige route nemen – middels een verwijzing in .htaccess – óf een plugin. Eén van de meeste populaire opties is de plugin Really Simple SSL:

Really Simple SSL plug-in
Really Simple SSL plugin

Het voordeel van deze plugin is dat het – met slechts enkele muisklikken – afdwingt dat je hele website via HTTPS laadt. Maar in onze ervaring kan het ook enkele bugs veroorzaken. Onder bepaalde omstandigheden kan het dus de 429-foutmelding veroorzaken waar we het nu over hebben.

Er is in de basis niks mis met deze plugin, maar het is zeker niet de beste manier om het gebruik van HTTPS te implementeren. Het probleem is dat, zelfs als je HTTPS handmatig implementeert, je nog steeds met het probleem van interne links zit. Er is een goede kans dat er veel interne links door je hele website zitten, dus je zult een manier moeten vinden om ze allemaal te vervangen met de HTTPS-versie nadat je de plugin uitgeschakeld hebt.

Om te beginnen moet je de plugin zelf uitschakelen. Als je toegang hebt tot het administratie-dashboard van WordPress is het niet zo lastig om Really Simple SSL uit te schakelen – klik simpelweg op Deactivate en je bent klaar.

Het uitschakelen van de Really Simple SSL plug-in
Het uitschakelen van de Really Simple SSL plugin

Maar doordat de foutmelding ‘429 Too Many Requests’ er vaak voor zorgt dat je niet langer bij je dashboard kunt, moet je wellicht de handmatige route nemen en de plugin uitschakelen via een FTP-client.

Hoe je het ook doet, als de Really Simple SSL plugin uit staat, zou de 429-foutmelding ook opgelost moeten zijn. Dit betekent dat je weer toegang hebt tot je dashboard, zodat je een nieuwe plugin kunt installeren, die ervoor zorgt dat je al je interne links in één keer vervangt. Deze plugin heet “Search and Replace”:

Search and Replace plug-in
Search and Replace plugin

Ga je gang en activeer de plugin, en navigeer vervolgens naar de Tools > Search & Replace tab in WordPress. Selecteer daar de wp_postmeta tabel en vul de volgende links in bij de velden “Search for” en “Replace with” respectievelijk:

Als je site een niet-www-domein gebruikt:
http://urlvanjouwwebsite.nl
https://yourwebsiteurl.com

In sommige gevallen kunnen er ook www-exemplaren van je domein in de database zijn, dus we raden tevens aan om ook een zoek-en-vervangopdracht uit te voeren met de onderstaande instellingen.

http://www.yourwebsiteurl.com
https://yourwebsiteurl.com

Als je site een www domein gebruikt:
http://www.yourwebsiteurl.com
https://www.yourwebsiteurl.com

Om niet-www instanties van je domein in de database te vervangen, voer je nog een zoek en vervang uit met de onderstaande instellingen:

http://www.yourwebsiteurl.com
https://urlvanjouwwebsite.nl

Selecteer daarna de testoptie, die je laat weten hoeveel HTTP-URL’s de plugin zal vervangen binnen je database. Na die test kun je de plugin echt uitvoeren en zal het alle noodzakelijke links vervangen.

Vergeet niet dat je na het uitzetten van de Really Simple SSL plugin nog een HTTPS-verwijzing voor je hele website op moet zetten door gebruik te maken van je .htaccess-bestand. Dit zorgt ervoor dat je HTTPS effectief kunt implementeren, zonder dat je een risico hebt op nog meer 429-foutmeldingen.

3. Deactiveer tijdelijk al je WordPress-plugins

Tot nu toe hebben we gefocust op een enkele plugin die de 429-fout kan veroorzaken. Maar in de praktijk kan elke plugin dit probleem veroorzaken als het te veel externe verzoeken doet. Als de bovenstaande twee methoden geen oplossing bieden in jouw geval, is het tijd om al je plugins uit te zetten, om er zeker van te zijn dat deze niet het probleem veroorzaken.

Voor dit deel nemen we aan dat je geen toegang hebt tot je dashboard, en je je plugins niet uit kunt zetten op de gebruikelijke wijze. In dit geval zul je toegang moeten krijgen tot je website via FTP, door gebruik te maken van een client zoals Filezilla en vervolgens navigeren naar de locatie public_html/wp-content.

Op die locatie zou je meerdere mappen moeten vinden, waaronder één met de naam plugins:

De map plug-ins
De map plugins

Klik met de rechtermuisknop op die map, en verander de naam naar iets anders, bijvoorbeeld plugins.inactief. Zodra je dat doet kan WordPress de plugins niet langer ‘vinden’, en zullen ze dus allemaal uitgeschakeld worden. Maar voordat je weer naar je website gaat, maak eerst een nieuwe lege map aan met de naam plugins, zodat WordPress normaal blijft werken.

Als de 429-fout weg is als je naar je website gaat, kun je aannemen dat het één van de plugins was die de boosdoener was. Dat betekent dat je moet uitvogelen welke plugin het probleem veroorzaakte. Dat doe je zo:

  1. Verwijder de lege map plugins die je net hebt aangemaakt, en geef de oorspronkelijke plugins map weer de originele naam.
  2. Ga naar de plugins map.
  3. Geef één van de mappen met plugins daarbinnen een nieuwe naam, waardoor je alleen die specifieke plugin uitschakelt.
  4. Ga naar je website, en kijk of de 429-fout weg is.
  5. Als de fout er nog steeds is, herstel je de oorspronkelijke naam en herhaal je stappen 3 en 4 met de volgende plugin.

Door zo één voor één al je actieve plugins af te gaan, zul je uiteindelijk moeten ontdekken welke plugin de oorzaak van dit alles is. Als je erachter komt welke plugin de foutmelding ‘429 Too Many Requests’ veroorzaakt, kun je deze gewoon volledig verwijderen, waarmee het probleem opgelost moet zijn.

4. Ga over op een standaard WordPress-thema

Als blijkt dat geen van je plugins de 429-fout veroorzaakt, is het mogelijk dat je actieve thema het probleem is. Om erachter te komen of dat het geval is kun je handmatige je actieve thema uitzetten, waardoor WordPress automatisch overschakelt naar één van de standaard thema’s die je bij de CMS krijgt.

Dit proces werkt nagenoeg op dezelfde manier als het handmatig uitzetten van de plugins. Je zult je inmiddels vertrouwde FTP-client weer willen starten, maar dit keer ga je naar de locatie public_html/wp-content/themes. Als je daar bent, zoek je naar de map die overeenkomt met je actieve thema, en geef je het een nieuwe naam.

Als je nu je website bezoekt, zou de ‘429 Too Many Requests’-foutmelding weg moeten zijn. Het zal je ook opvallen dat alles er wat anders uitziet. Maar geen paniek! Je thema en al je aanpassingen zijn er nog gewoon.

Het enige dat je hoeft te doen is de map terugzetten naar de originele naam en het opnieuw activeren. Als de 429-fout dan weer terugkomt, kun je het beste overwegen contact op te nemen met de ontwikkelaars van het thema, of het thema van je website veranderen en het uiteindelijk te verwijderen.

5. Neem contact op met je provider als je het probleem nog steeds niet op kunt lossen

In sommige gevallen is het mogelijk dat de 429-fout ontstaat op je server, in plaats van op je website. Als dit het geval is, kun je nog zoveel veranderen, maar zul je zelf nooit in staat zijn het probleem echt volledig op te lossen.

Zo blokkeren sommige webhosts verzoeken van specifieke diensten of platforms van derden. Dit kunnen bijvoorbeeld zoekmachines, crawlers en andere applicaties zijn (zoals de Google Search Console) die grote hoeveelheden aanvragen sturen naar je website.

Je kunt dan het probleem oplossen door contact te zoeken met je hostingprovider en ze te vragen om deze verzoeken toe te staan. Daarnaast, als zelfs beperkingen van je host op je server niet de oorzaak zijn van het probleem, kunnen zij je wellicht inzicht bieden en advies geven waardoor je de juiste oplossing vindt.

Samenvatting

Een foutmelding op je website tegenkomen is altijd frustrerend. Maar, als je dan toch een fout hebt, kun je beter een foutmelding met een code hebben, zodat je informatie hebt om deze op te gaan lossen. Als je de ‘429 Too Many Requests’-foutmelding tegenkomt, weet je dat iets je server overbelast met te veel verzoeken, en dan is het alleen nog maar een kwestie van de oorzaak identificeren.

Als je de 429-fout tegenkomt, zijn hier vijf manieren om deze op te lossen:

  1. Verander je standaard inlog-URL van WordPress.
  2. Deactiveer de Really Simple SSL plugin.
  3. Deactiveer tijdelijk al je WordPress-plugins.
  4. Schakel over naar een standaard WordPress-thema.
  5. Neem contact op met je host als je het probleem dan nog niet op kunt lossen.

Heb je nog vragen hoe je de foutmelding ‘429 Too Many Requests’ op kunt lossen in WordPress? Laten we erover praten in de reacties hieronder!