Er is niets ergers dan naar je WordPress website browsen en de white screen of death zien, waardoor je website niet toegankelijk is voor zowel de administrators en bezoekers. Vandaag lopen langs zes problemen die zich voordoen bij de WordPress white screen of death, de meest voorkomende oorzaken en belangrijkste, de oplossingen om je website weer zo snel mogelijk online te krijgen.

WordPress white screen of death? 😱 Geen paniek! Zo kun je het snel repareren. Click to Tweet

WordPress White Screen of Death

Een WordPress white screen of death (WSOD) wordt bijna altijd veroorzaakt door fouten in PHP-code of het bereiken van het geheugen limiet. Het eerste wat je zou moeten doen is vaststellen of de administratie van je website werkt. Als de voorkant van de website niet werkt maar de administratie wel, dan bestaat de kans dat je te maken heb met een defect thema of plugin. Je kan de administratie van de website controleren door te navigeren naar jouwdomein.nl/wp-admin.

Een white screen of death kan ook per browser anders weergegeven worden. Het voorbeeld hieronder in Google Chrome. De browser weergeeft een waarschuwing die zegt: “Deze pagina werkt niet en kan het verzoek niet verwerken”.  Dit is een HTTP 500 fout.

wordpress white screen of death chrome

WordPress white screen of death in Google Chrome

In Mozilla Firefox is het een compleet witte pagina zonder foutmeldingen of waarschuwingen.

wordpress white screen of death firefox

WordPress White Screen of Death in Mozilla Firefox

Als je een van de schermen zoals hierboven ziet zijn er een aantal gebruikelijke stappen om het probleem op te lossen:

1. Schakel plugins en thema’s uit

Een van de makkelijkste en voorkomende mogelijkheden om de WordPress white screen of death te repareren is simpel weg het uitschakelen van alle plug-ins. Vaak gaat een website offline door een slechte update van een plug-in. Als je nog toegang hebt tot de administratie kun je dit op een snelle manier doen door naar “Plugins” te navigeren en “Deactiveren” uit het bulk actie menu te selecteren. Dit zal al jouw plugins deactiveren. Als dit het probleem oplost moet je de veroorzaker vinden. Begin met het stuk voor stuk activeren van de plugins waarbij je de website na elke activatie herlaadt. Op het moment dat de voorkant van de website offline gaat weet je welke plugin het veroorzaakt. Je kunt dan contact opnemen met de plugin ontwikkelaar voor hulp of een support ticket indienen in de WordPress repository.

Deactiveer alle WordPress plugins

Deactiveer alle WordPress plugins

Indien je geen toegang hebt tot de administratie van de website dan kun je ftp gebruiken voor toegang tot je server. Hier hernoem je de plugins map naar iets als plugins_old. Hierna controleer je jouw website weer. Als de website werkt dan zal je de plugins per stuk moeten testen. Hernoem de plugins map weer naar zijn oude naam en begin de plugin map in de plugins map per stuk te hernoemen, totdat je de dader hebt gevonden.

Hernoem de WordPress plugin folder

Hernoem de WordPress plugin folder

Hetzelfde geldt voor jouw WordPress thema’s. Je kunt jouw thema tijdelijks vervangen voor een standaard WordPress thema, Twenty Nineteen is een uitstekende keuze. Indien je toegang hebt tot de admin van de website kun je naar “Thema’s” navigeren en het standaard thema Twenty Seventeen activeren. Is je site weer online? Dan zit het probleem in jouw thema.

Verander tijdelijk van WordPress thema

Verander tijdelijk van WordPress thema

Als je geen toegang hebt tot de admin, dan is het proces exact hetzelfde als met de plugins. Hernoem de wp-content/themes map naar iets als themes_old. WordPress schakelt dan automatisch naar het nieuwste standaard thema, welke waarschijnlijk Twenty Nineteen (Indien je geen andere thema’s hebt kan je Twenty Nineteen downloaden van de WordPress repository en naar jouw thema folder uploaden) is. Als jouw website weer werkt dan heeft jouw thema mogelijk een conflict of een slechte update gehad, in dit geval kan het voorkomen dat je contact moet opnemen met de ontwikkelaar van jouw thema.

Hernoem de wordpress thema folder

Hernoem de WordPress thema folder

2. Los syntax foutmeldingen op

Een andere veel voorkomende reden voor de white screen of death is als je de code op je WordPress website aan het bewerken was en je per ongeluk een typefout hebt gemaakt of de verkeerde syntax hebt gebruikt. 1 karakter op de verkeerde plaats kan je hele website offline halen. Ja, dat is enigszins beangstigend! Dat is een reden waarom je nooit code op de live website zou moeten bewerken.

Echter, geen zorgen. Je kunt altijd met je website verbinden via SFTP en de wijzigingen handmatig terugdraaien. Als je niet weet welke wijziging het veroorzaakt heeft, dan kun je een WordPress backup terugzetten. Dan weet je gelijk waarom backups waardevol zijn om te hebben. Bij Kinsta kun je de website herstellen naar een eerder punt met 1 druk op de knop.

Herstel WordPress site middels een backup

Herstel WordPress site middels een backup

3. Debugging inschakelen

Indien je nog steeds de WordPress white screen of death ziet of de admin van de website werkt niet (Of je de dader hebt gevonden maar je er dieper op in wilt gaan) dan kun je debugging inschakelen wat ervoor zorgt dat je alle foutmeldingen te zien krijgt. Het probleem is dat waneer er een fatale fout voorkomt het script compleet stopt met uitvoeren. Wanneer dit gebeurt voor dat er content is weergeven is het enige wat je ziet een wit scherm met geen enkele tekst erop.

Om debugging in te schakelen moet je het wp-config.php bestand van jouw WordPress installatie openen. In dat bestand vind je de volgende regel code:

define( 'WP_DEBUG', false )

Je moet false vervangen door true en dan je website herladen. Indien de code niet voorkomt in het bestand kun je hem toevoegen aan het begin.

WP_DEBUG voorbeeld

WP_DEBUG voorbeeld

In plaats van een wit scherm krijg je nu een wit scherm met foutmeldingen. Niet echt een verbetering, maar nu kun je tenminste beginnen met opsporen. Als je de plugins en thema’s nog niet gedeactiveerd hebt dan zou je nu alsnog in staat moeten zijn om de dader op te sporen door naar de foutmelding te kijken. De melding zou moeten vermelden uit welke file de fout komt, ongeveer dit:

Cannot redeclare get_posts() (previously declared in /var/www/html/wordpress/wp-includes/post.php:1874) in /var/www/html/wordpress/wp-content/plugins/my-test-plugin/my-test-plugin.php on line 38

Je kunt zien aan het einde van de melding dat het probleem zich voordoet op lijn 38 van een plugin genaamd “my-test-plugin”.  Het deactiveren van die plugin zou het probleem moeten oplossen.

Indien je geen problemen hebt met bewerken van code dan ben je mogelijk in staat om de fout te verhelpen. Als het een plugin vanuit de repository is, raad ik aan om contact op te nemen met de auteur in plaats van het zelf te doen. Indien je de plugin zelf bewerkt zal je ook alle veranderingen moeten onderhouden, het is gemakkelijker om de plugin te deactiveren totdat de ontwikkelaar de fout heeft opgelost. Mocht je helemaal geen foutmeldingen zien nadat je debugging hebt aangezet dan moet je waarschijnlijk contact opnemen met je hosting, aangezien debugging mogelijk niet goed is geconfigureerd voor jouw server.

4. Geheugen limiet verhogen

Als je nog steeds een lege pagina ziet of een pagina met een foutmelding over geheugen limieten of geheugen dat vol zit dan zal je meer geheugen moeten toekennen aan de applicatie. Dit kan gedaan worden via het wp-config.php bestand voor de meeste installaties. Voeg simpelweg het volgende stuk code toe aan het bestand:

define('WP_MEMORY_LIMIT', '64M');

Als dit niet werkt heb je een paar opties. In een normale omgeving kan je gebruik maken van een .htaccess bestand – in de Hoofd directory van WordPress – om het geheugen limiet te verhogen. Voeg de volgende code toe aan je .htaccess bestand:

php_value memory_limit 64M

Als je op een fantastische host als Kinsta zit en je website bliksemsnel werkt omdat de architectuur gebruik maakt van NGINX dan is .htaccess niet beschikbaar. Je kunt dan gebruik maken van een php.ini bestand om het geheugen limiet te verhogen. Voeg in het bestand de volgende code toe:

memory_limit = 64M

Heb je nog steeds geen geheugen genoeg en moet je het geheugen limiet steeds maar verhogen, dan is er mogelijk een probleem met de applicatie. Het kan zijn dat jouw thema of een van jouw plugins gebruik maakt van een buitensporige hoeveelheid resources. Vraag een ontwikkelaar om ernaar te kijken of vraag aan jouw hosting of ze je kunnen helpen door bijvoorbeeld de SQL Logs en andere resource statistieken te laten zien.

5. Bestands rechten controleren

Wij hebben nog geen white screen of death gezien dankzij dit probleem maar rechten en eigendom kwesties kunnen problemen veroorzaken. Wie weet, in sommige omstandigheden, kan het leiden tot een white screen of death! Het is mogelijk om dit zelf op te lossen, tenzij je echt weet wat je aan het doen bent raadden wij af dit zelf te doen. Voor WordPress zijn er 3 simpele regels:

  • Bestanden zouden 664 of 644 moeten zijn
  • Mappen zouden 775 of 755 moeten zijn
  • Het wp-config.php bestand zou 660, 600 of 644 moeten zijn.

Als je SSH toegang hebt tot jouw server dan kun je de geschikte regels instellen met het volgende commando, uitgevoerd vanuit de root WordPress directory.

sudo find . -type f -exec chmod 664 {} +
sudo find . -type d -exec chmod 775 {} +
sudo chmod 660 wp-config.php

Als je niet zeker weet hoe je dit moet doen of als je bang bent dit te doen, vraag het dan aan je hosting provider. Sommige WordPress specifieke hosting partijen hebben automatisch rechten checks welke dit allemaal kunnen regelen voor jou.

6. Controleer op mislukte automatische updates

Soms heeft WordPress een probleem met updaten, zoals bijvoorbeeld een server met een time-out. 9 van de 10 keer lost dit probleem zichzelf automatisch op maar in sommige gevallen leid dit tot een white screen of death.

Het eerste wat je zou moeten doen is in de root directory van jouw WordPress gaan en kijken of er een .maintenance bestand is. Voel je vrij om dit bestand te verwijderen en je website te herladen. Als de update succesvol was maar WordPress het bestandje niet automatisch kon verwijderen dan zal alles nu weer terug naar normaal gaan.

Als de update niet voltooid was dan wordt het hierna automatisch voor jou gedaan, waarna alles weer terug naar normaal zou moeten gaan. Als alles mislukt, volg dan de aangeraden WordPress handmatige update procedure welke het probleem voor eens en altijd zal oplossen.

Samengevat

Er zijn een aantal dingen die mis kunnen gaan, maar gelukkig is de situatie niet zo nijpend als het lijkt. Een simpele plugin/thema check zou het probleem kunnen oplossen en het activeren van debugging zal zeker meer licht op het probleem schijnen. Heb je ooit een andere situatie met een WordPress white screen of death mee gemaakt? Laat het ons weten zodat wij ervan kunnen leren en de ervaring kunnen delen.


Als je dit artikel leuk vond, dan zul je gek zijn op Kinsta's WordPress hosting platform. Of het nu gaat om het versnellen van jouw website of het krijgen van 24/7 support van ons ervaren WordPress-team. Onze door Google Cloud aangedreven infrastructuur is gericht op automatische schaalbaarheid, prestaties en beveiliging. Laat ons jou het Kinsta verschil tonen! Bekijk onze pakketten