Mijn website geeft een foutmelding (500, 503, wit scherm)
Geeft je website een foutmelding of alleen een wit scherm? In de meeste gevallen is de oorzaak een recente wijziging: een update, een nieuwe plugin of een aangepast bestand. Met de stappen hieronder vind je meestal zelf de oorzaak.
Eerst: is het een storing?
Kijk op status.intention.nl of er een storing of onderhoud is gemeld. Probeer ook een andere website die bij Intention draait. Werkt die wel, dan zit het probleem in je eigen website. Lees ook Hoe kan ik zien of er een storing is?
Wat betekent de foutmelding?
| 500 Internal Server Error | Er gaat iets mis in de code van je website of in het .htaccess-bestand. De echte oorzaak staat in de foutenlog. |
|---|---|
| Wit scherm zonder tekst | Een fout in PHP-code, meestal in een plugin of thema. PHP toont de fout niet aan bezoekers, maar schrijft hem wel in de foutenlog. |
| 503 Service Unavailable | Je website is tijdelijk niet beschikbaar. Bij WordPress gebeurt dit tijdens een update. Duurt het langer dan een paar minuten, dan is de update vastgelopen. |
| 502 of 504 | Een script duurde te lang of gebruikte te veel geheugen. Vaak een zware plugin, een import of een kapotte externe koppeling. |
| 403 Forbidden | De server weigert toegang. Meestal verkeerde bestandsrechten, een regel in .htaccess of een beveiligingsplugin die je blokkeert. |
| 404 Not Found | De pagina bestaat niet. Bij WordPress: sla de permalinks opnieuw op via Instellingen, Permalinks. |
| Error establishing a database connection | WordPress kan de database niet bereiken. Controleer de databasegegevens in wp-config.php. |
| Te veel omleidingen (redirect loop) | Twee instellingen sturen elkaar heen en weer, vaak een https-instelling in WordPress én in .htaccess. |
| Quota reached | Je webruimte is vol. Lees Melding 'Quota reached'. |
Stap 1: kijk in de foutenlog
De foutenlog vertelt precies welk bestand de fout veroorzaakt. Je vindt hem in het Control Panel van je hostingpakket bij de logbestanden van je domein. Kijk naar de laatste regels, daar staat de meest recente fout. Een regel als deze wijst je meteen naar de boosdoener:
PHP Fatal error: Uncaught Error in /wp-content/plugins/voorbeeld-plugin/plugin.php on line 120
Zie je Allowed memory size exhausted, dan heeft een script meer geheugen nodig. Lees Waar kan ik PHP instellingen vinden?
Stap 2: wat is er als laatste veranderd?
Denk terug: is er net een plugin, thema of WordPress zelf bijgewerkt? Is er een bestand aangepast of iets nieuws geïnstalleerd? Draai die wijziging terug. Kom je niet meer in het beheer van je website, gebruik dan FTP:
- Verbind met FTP. Lukt dat niet, lees Geen verbinding met FTP.
- Ga naar
wp-content/pluginsen hernoem de map van de verdachte plugin, bijvoorbeeld naarvoorbeeld-plugin-uit. WordPress schakelt de plugin dan uit. - Werkt de site weer? Dan is die plugin de oorzaak. Werkt hij nog niet, zet de naam terug en probeer de volgende.
- Weet je niet welke plugin het is? Hernoem dan de hele map
pluginsnaarplugins-uit. Werkt de site nu, zet de map terug en schakel de plugins één voor één weer in.
Voor een thema doe je hetzelfde in wp-content/themes. WordPress valt dan terug op een standaardthema.
Stap 3: controleer het .htaccess-bestand
Een fout in .htaccess geeft direct een 500-fout op de hele site. Hernoem het bestand via FTP naar .htaccess-oud en laad de site opnieuw. Werkt hij nu, dan zit de fout in dat bestand. Bij WordPress kun je een nieuw, schoon bestand laten maken door in het beheer de permalinks opnieuw op te slaan.
Stap 4: controleer de PHP-versie
Na een verandering van PHP-versie kan een oude plugin of een oud thema stoppen met werken. Andersom kan een nieuwe plugin een nieuwere PHP-versie eisen. Welke versie je gebruikt en hoe je die wisselt lees je in Kan ik van PHP versie veranderen? Probeer bij een fout na een update eerst één versie terug.
Stap 5: database-problemen
- Error establishing a database connection: de gegevens in
wp-config.phpkloppen niet meer, bijvoorbeeld na een gewijzigd wachtwoord. Lees MySQL wachtwoord aangepast, site werkt niet meer. - Table is marked as crashed: een tabel is beschadigd en moet gerepareerd worden. Lees Mijn MySQL database is 'marked as crashed'.
- Via phpMyAdmin kun je zelf in de database kijken en tabellen repareren.
Stap 6: bestandsrechten
Bestanden horen rechten 644 te hebben en mappen 755. Zijn de rechten strenger, dan kan de server de bestanden niet lezen en krijg je een 403- of 500-fout. Zijn ze te ruim, bijvoorbeeld 777, dan weigert de server ze uit veiligheid. In je FTP-programma pas je rechten aan via de eigenschappen van een bestand of map.
Stap 7: cache leegmaken
Zie je nog steeds de oude fout terwijl je al iets hebt opgelost? Maak dan de cache leeg: die van je browser, van een cache-plugin zoals LiteSpeed Cache, en van een eventuele dienst als Cloudflare.
Meer details zien bij WordPress
Wil je de fout op het scherm zien in plaats van een wit scherm? Zet dan tijdelijk de debugmodus aan door deze regels toe te voegen aan wp-config.php, boven de regel "That's all, stop editing":
define('WP_DEBUG', true);define('WP_DEBUG_LOG', true);define('WP_DEBUG_DISPLAY', false);
De fouten komen dan in het bestand wp-content/debug.log. Zet dit weer uit zodra het probleem is opgelost.
Kom je er niet uit?
Mail ons op support@intention.nl en vermeld:
- Het adres van de pagina waar het misgaat.
- De exacte foutmelding, of "wit scherm" als er niets staat.
- Sinds wanneer het gebeurt en wat er kort daarvoor is veranderd.
- Als je hem hebt: de regel uit de foutenlog.
Hoe meer je meestuurt, hoe sneller we de oorzaak kunnen vinden.