500 internal server error: oorzaken en oplossingen
Laatst bijgewerkt: 31 December 2025
500 internal server error: oorzaken en oplossingen
Een 500 Internal Server Error is een van de meest frustrerende errors die je kunt tegenkomen. In tegenstelling tot een 404 error (waar de pagina gewoon niet bestaat), wijst een 500 error op een serieus probleem met de server zelf. Je website is letterlijk kapot. In dit artikel leggen we uit wat een 500 error is, wat het veroorzaakt, en hoe je het oplost.
Wat is een 500 internal server error?
De 500 Internal Server Error is een algemene HTTP statuscode die aangeeft dat er iets mis is gegaan aan de serverkant, maar de server kan niet specifieker zijn over wat precies het probleem is. Het is in feite de server die zegt: "Er is iets fout gegaan, maar ik weet niet wat of ik kan het niet uitleggen."
Deze error is anders dan client-side errors (zoals 404). Het probleem ligt niet bij de gebruiker of de opgevraagde URL, maar bij de server die de website host. De server kan het verzoek niet verwerken vanwege een interne fout.
Varianten die je kunt tegenkomen:
- "500 Internal Server Error"
- "HTTP 500 - Internal Server Error"
- "500 Error"
- "HTTP Error 500"
- "Internal Server Error"
- "500. That's an error."
Alle varianten betekenen hetzelfde: de server heeft een probleem.
Veelvoorkomende oorzaken
Een 500 error kan door vele dingen veroorzaakt worden. Hier zijn de meest voorkomende oorzaken:
Fouten in .htaccess bestand: Dit is een van de meest voorkomende oorzaken. Een syntaxfout in je .htaccess bestand kan de hele site laten crashen. Zelfs een ontbrekend spatieteken of haakje kan genoeg zijn.
PHP geheugen limiet overschreden: WordPress of andere PHP applicaties kunnen meer geheugen nodig hebben dan toegestaan. Als het script de geheugen limiet raakt, krijg je een 500 error.
PHP timeouts: Als een script te lang draait (bijvoorbeeld een te grote database query), kan de server het proces killen, resulterend in een 500 error.
Corrupt WordPress core bestanden: Beschadigde WordPress bestanden kunnen 500 errors veroorzaken, vaak na een mislukte update.
Plugin conflicts: Een incompatibele of buggy plugin kan je hele site kapot maken. Dit is extreem vaak het geval na plugin updates.
Theme problemen: Een fout in je theme code (functions.php is vaak de boosdoener) kan een 500 error triggeren.
Database connectie problemen: Als WordPress geen verbinding kan maken met de database (verkeerde credentials, database server down), kan dit een 500 error geven.
File permissies: Verkeerde chmod permissies op cruciale bestanden of mappen kunnen de server verwarren en een 500 error veroorzaken.
Server configuratie problemen: php.ini misconfiguraties, Apache/Nginx configuratiefouten, of server software die vastloopt.
Resource limieten: Je hosting account heeft limieten voor CPU, RAM en processen. Deze overschrijden kan 500 errors veroorzaken.
Hoe je een 500 error diagnosticeert
Een 500 error is frustrerend omdat het zo algemeen is. Hier is hoe je uitzoekt wat het probleem is:
Stap 1: Controleer error logs
Dit is de belangrijkste stap. Error logs vertellen je precies wat er mis ging.
Via cPanel: Ga naar cPanel > Errors, of cPanel > Metrics > Errors. Hier zie je de meest recente PHP errors.
Via FTP: Error logs staan vaak in /logs/ of /public_html/error_log.
WordPress debug mode: Activeer debugging in wp-config.php:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
De error log vertelt je exact welk bestand, welke regel en wat het probleem is. Dit is cruciaal voor troubleshooting.
Stap 2: Check je recente wijzigingen
Kreeg je de 500 error vlak nadat je iets hebt veranderd? Dan is dat waarschijnlijk de oorzaak.
Denk aan:
- Net een plugin geïnstalleerd of geüpdatet?
- Theme gewisseld of aangepast?
- WordPress geüpdatet?
- .htaccess bestand aangepast?
- php.ini aangepast?
Als ja, reverse die wijziging.
Stap 3: Test met plugins uitgeschakeld
Schakel alle plugins uit om te zien of een plugin het probleem is:
Via FTP: Hernoem de /wp-content/plugins/ map naar /wp-content/plugins-disabled/. Als de site nu werkt, is het een plugin.
Hernoem dan terug naar plugins/ en schakel plugins één voor één uit (hernoem elke plugin map) tot je de boosdoener vindt.
Stap 4: Switch naar standaard theme
Schakel tijdelijk naar een standaard WordPress theme (Twenty Twenty-Three) om te testen of je theme het probleem is.
Via FTP kun je dit forceren door je huidige theme map te hernoemen.
Specifieke oplossingen voor 500 errors
.htaccess repareren
Als je .htaccess corrupt is:
- Hernoem het bestaande .htaccess bestand naar .htaccess-old (via FTP)
- Test of de site nu werkt
- Genereer een nieuw .htaccess door in WordPress naar Settings > Permalinks te gaan en op Save te klikken
- Als dat werkt, was je .htaccess het probleem
PHP geheugen limiet verhogen
Voeg dit toe aan je wp-config.php (boven de regel "That's all, stop editing!"):
define('WP_MEMORY_LIMIT', '256M');
Of in php.ini:
memory_limit = 256M
Of in .htaccess:
php_value memory_limit 256M
Max execution time verhogen
In php.ini:
max_execution_time = 300
Of in .htaccess:
php_value max_execution_time 300
File permissies corrigeren
Standaard WordPress permissies:
- Mappen: 755
- Bestanden: 644
- wp-config.php: 600 (extra veilig)
Via FTP of SSH kun je permissies aanpassen. Veel FTP clients hebben een "File Permissions" optie als je rechtsklikt op een bestand of map.
WordPress core herinstalleren
Als je denkt dat WordPress core bestanden corrupt zijn:
- Download de laatste WordPress versie van WordPress.org
- Unzip het lokaal
- Upload ALLEEN de wp-admin en wp-includes mappen (overschrijf de bestaande)
- Raak wp-content NIET aan (daar staan je themes en plugins)
Database repareren
Als je database corrupt is, voeg dit toe aan wp-config.php:
define('WP_ALLOW_REPAIR', true);
Ga dan naar: yoursite.com/wp-admin/maint/repair.php
Dit repareert en optimaliseert je database. Verwijder deze regel daarna weer uit wp-config.php.
Preventie van 500 errors
Regelmatige backups: Dit is cruciaal. Als alles misgaat, kun je terugzetten naar een werkende versie. Gebruik BackupBuddy, UpdraftPlus of je hosting's backup systeem.
Test updates op staging: Update nooit plugins, themes of WordPress direct op je live site. Test eerst op een staging omgeving.
Monitor resource gebruik: Houd je server resources in de gaten. Als je regelmatig tegen limieten aanloopt, upgrade je hosting.
Gebruik betrouwbare plugins: Installeer alleen plugins van gerenommeerde developers met goede reviews en regelmatige updates.
Houd alles up-to-date: Verouderde software is vaak de oorzaak van crashes en 500 errors. Update regelmatig, maar wel via staging.
Monitoring tools: Gebruik uptime monitoring zoals UptimeRobot of Pingdom. Je krijgt direct een alert als je site down is.
Error logging: Houd WordPress debug logging aan (maar toon errors niet publiekelijk). Zo zie je problemen voordat ze escaleren.
Wanneer je je hosting provider moet contacteren
Sommige 500 errors kun je niet zelf oplossen:
Server crashes: Als de webserver software (Apache, Nginx) zelf crasht, kun je niks doen. Contact support.
Hosting configuratie problemen: Server-level configuratie fouten kunnen alleen door de host worden opgelost.
Resource limieten: Als je constant tegen hosting limieten aanloopt en je hebt al geoptimaliseerd, is het tijd voor een upgrade.
Database server problemen: Als de MySQL server down is of overbelast, is dat een hosting probleem.
DDoS attacks: Als je site wordt aangevallen, moet je hosting provider dit mitigeren.
Goede hosting providers hebben 24/7 support en kunnen server-side 500 errors snel diagnosticeren en oplossen.
500 error vs andere server errors
Het is goed om het verschil te kennen:
500 Internal Server Error: Algemene server error, oorzaak onbekend 501 Not Implemented: De server ondersteunt de gevraagde functionaliteit niet 502 Bad Gateway: De server kreeg een ongeldige response van een upstream server 503 Service Unavailable: De server is tijdelijk overbelast of in onderhoud (vaak minder erg dan 500) 504 Gateway Timeout: De upstream server reageerde niet op tijd
Een 503 is vaak tijdelijk en lost zichzelf op. Een 500 wijst op een daadwerkelijk probleem dat opgelost moet worden.
Impact op SEO en gebruikers
Een 500 error is slecht voor je site:
Directe traffic verlies: Bezoekers kunnen je site niet gebruiken en vertrekken gefrustreerd.
SEO impact: Als je site langdurig 500 errors geeft, zal Google je rankings verlagen. Een paar minuten is geen probleem, maar uren of dagen wel.
Reputatieschade: Een site die vaak down is oogt onprofessioneel en onbetrouwbaar.
Omzet verlies: Voor webshops betekent elke minuut downtime direct omzetverlies.
Los 500 errors daarom altijd direct op. Het is geen probleem dat vanzelf weggaat.
Tools voor troubleshooting
Browser Developer Tools: De Network tab toont je de exacte HTTP status code en response headers.
Online HTTP status checkers: Sites zoals httpstatus.io kunnen je site checken en de exacte error tonen.
Postman: Voor het testen van API endpoints en het zien van server responses.
Screaming Frog: Kan je hele site crawlen en alle 500 errors identificeren.
New Relic / Application Performance Monitoring: Voor geavanceerde server performance monitoring.
Emergency recovery plan
Als je website compleet down is met een 500 error:
- Blijf kalm en diagnosticeer: Check error logs eerst
- Restore from backup: Als je recent een backup hebt, restore deze
- Disable plugins: Via FTP, hernoem de plugins map
- Switch theme: Forceer een standaard theme
- Check .htaccess: Hernoem of verwijder het
- Contact hosting: Als niets helpt, bel support
Heb een emergency plan klaar voordat het gebeurt. Weet waar je backups staan, hoe je FTP toegang krijgt, en waar je hosting support contacteert.
Meer informatie: WordPress.org documentatie
Veelgestelde vragen
Wat kost webhosting gemiddeld?
Webhosting kost gemiddeld tussen de €3 en €15 per maand voor shared hosting. VPS hosting begint rond €10-€20 per maand, en dedicated servers vanaf €50 per maand.
Kan ik later upgraden naar een ander pakket?
Ja, bij de meeste hosting providers kun je eenvoudig upgraden naar een groter pakket wanneer je website groeit. Dit kan meestal zonder downtime.
Is Nederlandse hosting beter dan buitenlandse?
Voor Nederlandse bezoekers is Nederlandse hosting vaak sneller door de kortere afstand. Daarnaast is communicatie met support makkelijker en voldoe je aan de AVG/GDPR wetgeving.
Was dit artikel nuttig?
Vergelijk direct hosting pakketten om de beste keuze voor jouw situatie te maken.
Gerelateerde artikelen
Website verhuizen: compleet stappenplan
Website verhuizen naar nieuwe hosting? Volg dit stap-voor-stap plan om je website veilig en zonder downtime te migreren.
Wat is PHP memory limit? Geheugenlimiet verhogen
Ontdek wat de PHP memory limit is, waarom je deze moet verhogen en hoe je memory_limit aanpast voor betere prestaties.
301 redirect: permanente doorverwijzing uitgelegd
Leer wat een 301 redirect is, wanneer je het moet gebruiken en hoe het je SEO beïnvloedt.
404 error: pagina niet gevonden uitgelegd
Ontdek wat een 404 error is, wat het veroorzaakt en hoe je 404 fouten oplost en voorkomt.
503 service unavailable: server overbelast
Ontdek wat een 503 error betekent, wat het veroorzaakt en hoe je het oplost of voorkomt.