XAMPP blijft een van de meest gebruikte lokale serveromgevingen voor webontwikkelaars, maar er gaat bijna altijd iets mis. Je installeert het, klikt op Start en dan… Apache weigert. Of MySQL stopt er plots mee. De foutmeldingen zijn vaag en de echte oorzaak zit bijna nooit in XAMPP zelf. Hieronder vind je de fouten die je het vaakst tegenkomt en hoe je ze definitief oplost.
Waarom XAMPP Apache niet start: poort 80 en 443 zijn de hoofdverdachten
De nummer 1 reden dat XAMPP niet opstart in Windows: poort 80 of 443 is al bezet. IIS, Skype, TeamViewer of zelfs een achtergrondproces van Windows zelf kan die poort claimen. XAMPP geeft dan geen duidelijke uitleg, maar Apache start simpelweg niet.
Open de opdrachtprompt als administrator en typ:
netstat -ano | findstr :80
Zie je een PID? Zoek die op in Taakbeheer en stop het proces. Of verander de poort van Apache. Dat doe je in xamppapacheconfhttpd.conf. Zoek Listen 80 en vervang door Listen 8080. Zoek ook ServerName localhost:80 en zet dat op localhost:8080. Vergeet niet de vhosts in httpd-vhosts.conf aan te passen.
Voor HTTPS geldt hetzelfde: bewerk xamppapacheconfextrahttpd-ssl.conf en wijzig Listen 443 naar Listen 8443.
MySQL start niet: poort 3306, rechten of corrupte data
MySQL die weigert te starten is meestal een poortconflict op 3306 of een beschadigde InnoDB-tabel. XAMPP toont dan “MySQL shutdown unexpectedly” of erger: “Unable to open process”.
Controleer eerst of poort 3306 vrij is met netstat -ano | findstr :3306. Zo niet, stop de andere MySQL-instantie of wijzig de poort in xamppmysqlbinmy.ini. Zoek port=3306 en zet er bijvoorbeeld port=3307 van.
Als de fout blijft, kijk dan in xamppmysqldatamysql_error.log. Zie je verwijzingen naar ibdata1 of ib_logfile? Dan is de data corrupt. Hernoem de map data naar data_oud, maak een nieuwe lege data-map aan en kopieer alleen je eigen databases terug. Start MySQL opnieuw.
Draai XAMPP altijd als administrator. Zonder verhoogde rechten kan Windows de services blokkeren en krijg je vage fouten die nergens op slaan.
Het XAMPP-controlepaneel bevriest of blijft hangen
Een bevroren Configuratiescherm bij het starten van Apache betekent bijna altijd een poortconflict of een firewall die het proces tegenhoudt. Windows Defender en third-party antivirus blokkeren soms httpd.exe zonder melding.
Voeg een uitzondering toe voor de volledige XAMPP-map in je antivirus. Test daarna opnieuw. Als het dan wel werkt, weet je dat het beveiligingssoftware was.
Ook UAC kan roet in het eten gooien. Schakel het tijdelijk uit via Configuratiescherm > Gebruikersaccounts > Instellingen voor gebruikersaccountbeheer wijzigen > Nooit melding geven. Herstart en probeer opnieuw. Dit is geen permanente oplossing, maar het helpt om de oorzaak te isoleren.
PHP-versie wijzigen zonder XAMPP te slopen
Wil je een andere PHP-versie draaien? Download de gewenste versie van de officiële PHP-site (windows.php.net) en vervang de map xamppphp door de nieuwe. Kopieer daarna je aangepaste php.ini terug of pas de nieuwe aan.
Let op: sommige extensies zoals php_curl.dll of php_openssl.dll moeten overeenkomen met de versie. Zet in php.ini de juiste extension_dir en verwijder de puntkomma voor de extensies die je nodig hebt. Herstart Apache.
Voor het verhogen van de uploadlimiet pas je in php.ini aan: upload_max_filesize = 64M en post_max_size = 64M. Vergeet niet max_execution_time op te hogen als je grote imports doet.
Wat als XAMPP blijft weigeren na al deze stappen?
Herinstalleer XAMPP niet meteen. Controleer eerst de logs: xamppapachelogserror.log en xamppmysqldatamysql_error.log. Daar staat exact welke module of welk bestand faalt.
Een andere veelvoorkomende oorzaak is een verouderde Visual C++ Redistributable. XAMPP heeft de juiste versie nodig (meestal 2015-2022). Download en installeer die van de Microsoft-site.
Als zelfs dat niet werkt, verwijder XAMPP volledig, verwijder de map C:xampp handmatig en installeer opnieuw. Soms blijft er een oude service hangen die de nieuwe installatie blokkeert.
XAMPP is geen rocket science, maar het is ook geen plug-and-play. De fouten die je ontwikkeling stoppen zijn bijna altijd terug te voeren op poorten, rechten of corrupte data. Pak die drie aan en je bent 90% van de problemen kwijt.