Allowed memory size exhausted in WordPress – oorzaken en oplossingen

Deze fout betekent dat je website meer geheugen nodig had dan beschikbaar was.

Iedere WordPress-gebruiker schrikt wel eens van een cryptische foutmelding. Stel je voor: je activeert een nieuwe plugin of uploadt een grote afbeelding, en ineens verschijnt er een wit scherm met de tekst “Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)”. Klinkt eng, maar geen paniek – deze veelvoorkomende WordPress-fout is gelukkig relatief eenvoudig op te lossen.

In dit kennisbankartikel leg ik in begrijpelijke taal uit wat de foutmelding “Allowed memory size exhausted” precies betekent, waardoor hij ontstaat, en vooral hoe je hem zelf kunt verhelpen. Ook geef ik tips om dit geheugenprobleem in de toekomst te voorkomen.

Kort samengevat: deze foutmelding duidt erop dat je website meer geheugen nodig had dan beschikbaar was. Hieronder lees je stap-voor-stap hoe je de geheugenlimiet verhoogt (via wp-config.php, .htaccess, php.ini of cPanel) en wat je kunt doen om niet telkens tegen dit probleem aan te lopen. Ik neem je stap voor stap mee.

Wat betekent de foutmelding “Allowed memory size exhausted”?

Wanneer WordPress een melding geeft als “Allowed memory size of 67108864 bytes exhausted” betekent dit simpel gezegd dat je website door zijn toegewezen geheugen heen is. Elke website krijgt van de server een bepaalde hoeveelheid geheugen (RAM) om PHP-scripts uit te voeren en data in op te slaan. WordPress zelf, plus al je plugins, thema’s en mediabestanden, verbruiken samen geheugen. Als je site meer geheugen probeert te gebruiken dan is toegestaan, blokkeert PHP het proces en krijg je een fatal error te zien.

Tip: die lange waarde in de foutmelding (bijvoorbeeld 67108864 bytes) is de hoeveelheid geheugen die was toegestaan voordat de fout optrad. 67108864 bytes staat gelijk aan 64 MB. Het deel “tried to allocate … bytes” geeft aan hoeveel extra geheugen de site nog probeerde te gebruiken op het moment dat het misging.

Oorzaak in begrijpelijke taal: de fout “Allowed memory size exhausted” ontstaat meestal doordat de PHP memory limit (geheugenlimiet) te laag staat of je site die limiet overschrijdt. Standaard is WordPress vaak beperkt tot slechts 32 MB of 64 MB geheugen – voldoende voor eenvoudige sites, maar te weinig voor zwaardere taken. Zeker op groeiende websites met veel plugins, grote afbeeldingen of complexe thema’s kan dit limiet snel bereikt worden. Denk aan het activeren van een zware plugin of thema, of het uploaden van veel media; dit zijn typische momenten waarop de fout zich voordoet. Ook een plugin met een geheugenlek of inefficiënte code kan abrupt enorme hoeveelheden RAM vragen, met dezelfde foutmelding als gevolg.

Kortom, de error betekent dat je WordPress-site tegen een muur aanloopt van te weinig beschikbaar geheugen. Gelukkig vertelt de melding mij precies wat er mis is (het geheugen is op) – en dat maakt de weg naar een oplossing vrij rechttoe rechtaan.

Geheugenlimiet verhogen: zo los je de fout op

De oplossing voor “Allowed memory size exhausted” is in de basis eenvoudig: meer geheugen toekennen aan je website zodat hij niet meer tegen de limiet aanloopt. In de praktijk betekent dit dat je de PHP memory limit moet verhogen. Afhankelijk van je hostingomgeving zijn er verschillende manieren om dit te doen. Hieronder bespreek ik vier methodes stap voor stap:

  • Aanpassen via het WordPress configuratiebestand wp-config.php
  • Toevoegen van een regel in je .htaccess-bestand
  • Wijzigen van de PHP-instellingen via php.ini
  • Verhogen van het geheugenlimiet via het hostingpaneel (bijvoorbeeld cPanel)

Kies de methode die het beste bij jouw situatie past. Heb je toegang tot de bestanden van je site (via FTP of bestandsbeheer)? Dan kun je wp-config.php of .htaccess aanpassen. Heb je eigen servertoegang of een VPS? Dan kun je mogelijk direct de php.ini wijzigen. Voor velen zal de route via het hostingcontrolepaneel het makkelijkst zijn, als de host dit toelaat.

Vooraf: maak altijd een backup van belangrijke bestanden voordat je ze wijzigt, met name wp-config.php en php.ini. Een kleine typefout kan een site onbruikbaar maken, dus zorg dat je een kopie hebt om op terug te vallen. Gelukkig is de aanpassing hier relatief simpel, maar beter het zekere voor het onzekere!

Methode 1: PHP memory limit verhogen via wp-config.php

Afbeelding: in het WordPress configuratiebestand wp-config.php kun je de geheugenlimiet verhogen door de constante WP_MEMORY_LIMIT toe te voegen of aan te passen. In dit voorbeeld is de limiet gezet op 256M.

De meest gebruikelijke manier om WordPress meer geheugen toe te wijzen is via het bestand wp-config.php in de hoofdmap van je site. Volg deze stappen:

  1. Open wp-config.php – dit bestand staat in de root folder van je WordPress-installatie (meestal in /public_html of de map met je domeinnaam). Je kunt het openen via FTP (bijv. met FileZilla) of via het bestandsbeheer in je hostingpanel.
  2. Zoek naar WP_MEMORY_LIMIT – scrol door het bestand en kijk of er al een regel bestaat met define('WP_MEMORY_LIMIT', '...');. Vaak ontbreekt deze, maar als hij er staat kun je simpelweg het getal (de hoeveelheid geheugen) verhogen.
  3. Voeg de regel toe of wijzig deze – als de regel nog niet bestaat, voeg dan de volgende code toe vlak vóór de regel “That’s all, stop editing! Happy blogging.” in wp-config.php:
define('WP_MEMORY_LIMIT', '256M');

Hiermee zet je de geheugenlimiet op 256 MB. In de meeste gevallen is 256M ruim voldoende om de fout op te lossen. Bestond de regel al maar met een lager getal (bijv. 64M), verhoog dit dan naar 256M of hoger. Je kunt eventueel nog meer toekennen (bijv. 512M) als 256M niet volstaat, maar realiseer je dat de host vaak een bovengrens heeft.

  1. Sla het bestand op en upload het terug naar de server (of klik op Save als je een online editor gebruikt).
  2. Probeer nu opnieuw de actie uit te voeren die de foutmelding veroorzaakte (bijvoorbeeld die plugin activeren of afbeelding uploaden). Verdwenen de “memory exhausted” error? Mooi, dan heb je het probleem verholpen door meer geheugen beschikbaar te stellen. Zo niet, dan kun je de waarde in wp-config.php verder ophogen en opnieuw testen. Blijft de fout hardnekkig terugkomen bij een veel hoger limiet, dan is de kans groot dat je de maximale limiet van je hostingpakket hebt bereikt. In dat geval, zie de tips verderop over structurele oplossingen of neem contact op met je host.

Nog een optie: WordPress heeft ook een aparte limiet voor geheugengebruik in de adminomgeving (WP_MAX_MEMORY_LIMIT). Standaard is deze vaak hoger dan WP_MEMORY_LIMIT. In principe hoef je deze niet aan te passen tenzij je specifiek in de WordPress admin een memory error krijgt. Het verhogen van WP_MEMORY_LIMIT zoals hierboven is meestal voldoende voor zowel frontend als backend taken.

Methode 2: Geheugenlimiet instellen via .htaccess

Afbeelding: voorbeeld van een .htaccess-bestand waarin de PHP memory limit is verhoogd naar 256M via de directive php_value memory_limit 256M.

Een alternatieve manier (met name bruikbaar op Apache-servers met PHP als module) is het aanpassen van het .htaccess-bestand in de root van je website. In .htaccess kun je PHP-instellingen overriden via zogeheten directives. Volg deze stappen:

  1. Open het .htaccess-bestand in de hoofdmap van je WordPress-site. Dit is een verborgen bestand (let op de punt voor de bestandsnaam). In je FTP-client moet je wellicht “Show hidden files” inschakelen om het te zien. Via cPanel bestandsbeheer kun je vaak direct naar public_html en .htaccess openen.
  2. Zoek het einde van de WordPress sectie – je ziet waarschijnlijk een blok regels tussen # BEGIN WordPress en # END WordPress. Scroll naar onderen, na # END WordPress.
  3. Voeg de memory_limit directive toe – plaats de volgende regel onderaan het .htaccess-bestand, na het WordPress-blok:
php_value memory_limit 256M
  1. Sla het bestand op en sluit de editor.
  2. Test je site opnieuw. Als de .htaccess-aanpassing is toegestaan door je host, zou de foutmelding nu weg moeten blijven.

Let op: niet alle hostingomgevingen staan toe dat je PHP-instellingen via .htaccess wijzigt. Sommige hosts blokkeren dit om veiligheidsredenen. Merk je dat deze methode bij jou geen effect heeft (fout blijft bestaan, of je krijgt een interne server error na aanpassing), haal de toegevoegde regel dan weer weg en probeer een van de andere methodes.

Methode 3: Geheugenlimiet verhogen via php.ini (of user.ini)

Op sommige (met name eigen of VPS) servers kun je de PHP-instellingen direct aanpassen via een php.ini bestand. Dit is het configuratiebestand van PHP zelf. Als je hier toegang toe hebt, kun je de memory limit direct daarin verhogen:

  1. Vind de juiste php.ini – afhankelijk van je server kan er een globale php.ini zijn of eentje per website (soms heet het ook user.ini of php.ini in de webroot voor specifieke instellingen). Als je een cPanel account hebt zonder MultiPHP editor (zie volgende methode), kun je proberen een leeg bestand php.ini of .user.ini in de public_html te zetten.
  2. Open/bewerk het php.ini bestand – zoek naar de lijn die begint met memory_limit. Deze zal een waarde hebben, bijvoorbeeld memory_limit = 64M.
  3. Verhoog de waarde – pas de lijn aan naar een hoger aantal MB. Bijvoorbeeld:
memory_limit = 256M

Sla de wijziging op. (Als de lijn niet bestaat, voeg dan memory_limit = 256M toe als nieuwe regel.)

  1. Herstart indien nodig de PHP-service – in veel shared hosting omgevingen is dit niet nodig en wordt de wijziging direct opgepikt. Bij een eigen server/VPS moet je mogelijk de webserver of PHP-FPM herstarten zodat de nieuwe instelling actief wordt.
  2. Controleer de site – voer de actie opnieuw uit die de fout gaf. Als alles goed is gegaan, zou de fatal error verdwenen moeten zijn.

Merk je geen verschil? Dan kan het zijn dat jouw hosting custom php.ini’s negeert voor gedeelde accounts. In dat geval werkt deze methode niet en kun je beter wp-config.php of cPanel gebruiken.

Methode 4: PHP memory limit verhogen via cPanel (hostingpaneel)

Veel hostingproviders bieden een gebruiksvriendelijke manier om PHP-instellingen aan te passen via het controlepaneel, bijvoorbeeld cPanel of DirectAdmin. In cPanel is er vaak een optie genaamd “Select PHP Version” of “MultiPHP INI Editor” waarmee je de memory_limit kunt wijzigen via een paar klikken.

Afbeelding: in cPanel kun je onder Software → Select PHP Version de PHP opties aanpassen. Hier is de memory_limit instelling te zien, welke je kunt wijzigen naar bijvoorbeeld 256M.

Ga als volgt te werk om via cPanel de geheugenlimiet te verhogen:

  1. Log in op cPanel en ga naar het gedeelte “Software”. Klik daar op “Select PHP Version” (of soms heet het PHP Settings of MultiPHP Manager).
  2. In het PHP‑versie scherm, klik op “Options” of “Switch to PHP Options”. Je krijgt nu een lijst met PHP configuratie‑opties te zien.
  3. Zoek memory_limit in de lijst. Klik op de huidige waarde (bijvoorbeeld 128M). Je krijgt een dropdown of invulveld te zien met mogelijke waardes.
  4. Verhoog de memory_limit – kies een hogere waarde, bijvoorbeeld 256M of 512M. Bevestig de wijziging. In cPanel wordt de nieuwe waarde meestal direct opgeslagen en actief gemaakt. Je ziet vaak een groene melding verschijnen dat de wijziging is doorgevoerd.
  5. Test je website opnieuw om te zien of de fout is verholpen.

In andere controlepanelen (Plesk, DirectAdmin, hPanel van Hostinger, etc.) zijn vergelijkbare opties aanwezig om de PHP-configuratie aan te passen. Het komt neer op: vind de instelling memory_limit en verhoog deze. Dit is vaak de meest laagdrempelige manier voor gebruikers die niet zelf in bestanden willen duiken.

NB: als je de memory_limit niet kunt wijzigen of de instelling niet zichtbaar is in je hostingpanel, kan het zijn dat jouw pakket dit niet toelaat. Sommige goedkope hostingpakketten forceren een vaste limiet en verbergen deze optie. In zo’n geval kun je het beste contact opnemen met je host voor advies, of overwegen om te upgraden naar een pakket waar je wél genoeg resources krijgt.

En als het nog niet werkt?

Heb je alle bovenstaande methodes geprobeerd en blijft de foutmelding “Allowed memory size exhausted” toch opduiken? Dan zijn er twee waarschijnlijke scenario’s:

  • Je zit aan de maximale limiet die jouw hostingprovider toestaat op jouw pakket. Bijvoorbeeld, je host heeft hard gecapped op 256M en je site heeft meer nodig. In dit geval kun je zelf niet verder verhogen en moet je denken aan een hostingupgrade (of de host vragen om een hogere limiet).
  • Er is iets anders mis – bijvoorbeeld een plugin die in een loop blijft hangen en oneindig geheugen blijft opslokken. Probeer in dit geval plugins één voor één uit te schakelen om de boosdoener te vinden, of bekijk de server error logs voor aanwijzingen.

In de praktijk is het eerste scenario het meest voorkomend: je site is misschien gewoon het jasje van het huidige hostingpakket ontgroeid. Vooral als je op een instap (shared) hosting zit, is de beschikbare RAM beperkt. De structurele oplossingen hieronder helpen je hier verder mee.

Tips om geheugenfouten te voorkomen

Voorkomen is beter dan genezen. Als je eenmaal de fout hebt opgelost, wil je natuurlijk niet dat deze morgen weer terugkomt. Enkele best practices om structurele geheugenproblemen te voorkomen:

  • Haal de bezem door plugins en thema’s: de meest voorkomende oorzaak van deze error is een te laag limiet in combinatie met veeleisende plugins. Verwijder ongebruikte plugins en thema’s, en voorkom overlap in functionaliteit (bijv. vijf plugins die iets met performance doen). Hoe minder plugins, des te lager het geheugengebruik doorgaans.
  • Kies lichte, efficiënte plugins: let bij de keuze van nieuwe plugins op hun reputatie en codekwaliteit. Sommige plugins staan bekend als geheugen‑slurpers. Reviews of documentatie vermelden dit soms. Een alternatief is om met een plugin als Query Monitor het geheugenverbruik van plugins te meten, zodat je weet welke boosdoener is.
  • Gebruik caching en optimalisatie: een caching‑plugin (zoals WP Super Cache of W3 Total Cache) kan de belasting op PHP flink verminderen door pagina’s statisch te serveren. Hierdoor hoeft WordPress minder hard te werken per pageload, wat het geheugengebruik drukt. Optimaliseer ook je afbeeldingen en database; een opgeruimde site draait lichter.
  • Update regelmatig: zorg dat WordPress core, thema’s en plugins up‑to‑date zijn. Ontwikkelaars verbeteren hun code en performance, wat soms ook minder memory betekent. Daarnaast draaien nieuwe PHP‑versies efficiënter: PHP 8.x gebruikt bijvoorbeeld minder geheugen dan PHP 5.6 voor dezelfde taken.
  • Monitor geheugenverbruik: sommige hostingpanels of plugins kunnen inzicht geven in het realtime geheugenverbruik van je site. Het kan nuttig zijn om te weten of je site bijvoorbeeld standaard al 80% van het beschikbare geheugen verbruikt. Dan zit je continu tegen de limiet aan en is de kans op fouten groter. In zo’n geval is het verstandig om het limiet te verhogen of opschaling te overwegen voordat de site crasht.
  • Kies een passend hostingpakket: uiteindelijk moet het pakket aansluiten bij de zwaarte van je website. Een website met 50 plugins en zware WooCommerce functionaliteit heeft meer RAM nodig dan een eenvoudig blog. Loop je regelmatig tegen geheugenfouten aan, dan is dat een signaal dat je wellicht beter af bent met een hoger pakket of gespecialiseerde WordPress hosting die royale resources biedt.

Door bovenstaande tips te volgen, verklein je de kans aanzienlijk dat je nog eens de gevreesde “out of memory” melding ziet. Je houdt je WordPress‑omgeving schoon, snel en binnen de perken van het beschikbare geheugen.

Conclusie: zelf doen of uit handen geven

De “Allowed memory size exhausted” foutmelding kan even schrikken zijn, maar je hebt nu gezien dat de oplossing meestal slechts een kwestie is van de PHP‑geheugenlimiet verhogen. Met een paar simpele ingrepen in wp-config.php, .htaccess, php.ini of via je hostingpaneel is het probleem vaak binnen minuten verholpen. Ook heb je geleerd hoe je structureel kunt voorkomen dat je site geheugen tekortkomt, door bewuste keuzes te maken in plugins, optimalisatie en hosting.

Klaar met terugkerende traagheid?

Traagheid komt vaak terug na snelle fixes. Managed hosting houdt updates, caching en limieten consequent op orde.

Bekijk Managed WordPress Hosting