XAMPP Apache won’t start on Windows 10 — a fix

At work yesterday I discovered that the localhost Apache web server on my PC wouldn’t start; it was running XAMPP.

Each time I tried to start Apache from the XAMPP control panel I got these error messages in the console:

08:59:34 [Apache] Attempting to start Apache app…
08:59:35 [Apache] Status change detected: running
08:59:35 [Apache] Status change detected: stopped
08:59:35 [Apache] Error: Apache shutdown unexpectedly.
08:59:35 [Apache] This may be due to a blocked port, missing dependencies,
08:59:35 [Apache] improper privileges, a crash, or a shutdown by another method.
08:59:35 [Apache] Press the Logs button to view error logs and check
08:59:35 [Apache] the Windows Event Viewer for more clues
08:59:35 [Apache] If you need more help, copy and post this
08:59:35 [Apache] entire log window on the forums

Fix

Reinstalling XAMPP didn’t fix the issue. But this did, spotted on the ever-wonderful Stackoverflow:

  1. Press Windows + R to bring up the Windows Run… dialog.
  2. Type services.msc and click OK.
  3. Scroll down the list of services to find World Wide Web Publishing Service.
  4. Right-click it and select Properties.
  5. Change the Startup type to Manual.
  6. Click Stop and wait for the service to stop.
  7. Click OK.
World Wide Web Publishing Service properties dialog
This is the naughty culprit

That fixed it. Now Apache is running, as evidenced by the green light on the XAMPP control panel:

XAMPP Control Panel
Both Apache httpd and MySQL are running

Regular expressions

Last week I ordered The Definitive Guide to Apache mod_rewrite by Rich Bowen on Amazon UK.

It arrived today, and I’m nearly one third through it already.  It’s a really well written, easy to read book about that mysterious “Swiss Army Knife” or URL manipulation.

For those who don’t know, mod_rewrite is what makes WordPress web addresses (URLs) so friendly.

So this evening I’m playing with a cool application called The Regex Coach, which allows you to play with regular expressions (often shortened to ‘regex’) and see how they react to some example text that you give it.