XAMPP got a lot of us started with PHP. Unzip it, click Start, open localhost, done. It's still what many tutorials and colleges use.

But XAMPP's last Windows release came out in November 2023, and the newest PHP it ships is 8.2. PHP 8.5 was released on 20 November 2025, and PHP 8.2 gets security fixes only until 31 December 2026. I wanted a local stack for Windows that keeps up with PHP releases, is free for any use and doesn't need admin rights, so I built ServNook.

It's free and open source (MIT): github.com/hashencoder/servnook

The ServNook control panel

What I wanted from a local stack

  • Official binaries, not repackaged ones, and downloads that are verified
  • Sites without editing the hosts file
  • Several PHP versions at once
  • Data that survives a crash, a dead battery or a bad update
  • Nothing exposed to the network unless I ask for it
  • Free and open source, including for commercial work

How ServNook works

Install and first run

The installer is per-user: it goes to C:\ServNook and needs no admin rights. On first run, ServNook looks up and downloads the current official Windows builds of Apache (Apache Lounge), PHP 8.5, MariaDB (the 12.3 LTS series), phpMyAdmin, Node.js LTS and Composer, plus a CA bundle so PHP's HTTPS calls work. Where the publisher provides a SHA-256 checksum, the download is verified against it before anything is installed.

Nothing is installed system-wide. ServNook lives in one folder, like XAMPP.

Every folder is a site

Create www\blog, click Refresh sites, and it's served at http://blog.localhost. No hosts file, no admin rights. If the folder has a public\ directory (Laravel, Symfony), that becomes the document root. The localhost dashboard lists your sites and recognises Laravel, WordPress, Symfony, CodeIgniter, Drupal and Joomla.

Every folder in www gets its own .localhost address

PHP versions and the snook command

You can keep several PHP versions side by side and switch in the app or from a terminal:

snook status snook start snook php 8.4 

There's also a Shell button that opens a console with php, node, npm, composer and the MariaDB client on PATH.

Node apps

Modern PHP projects often come with a Vite dev server or a small Node API. ServNook runs Node apps as managed processes: register the folder and command once, and the app gets its own http://name.localhost address through Apache, websockets included.

The part I care about most: not losing data

Local databases are easy to treat as disposable, until the day they aren't. If you've used XAMPP for a while, you've probably seen "MySQL shutdown unexpectedly" after Windows restarted or the laptop battery died.

ServNook runs MariaDB with crash-safe settings (innodb_flush_log_at_trx_commit=1, the doublewrite buffer on). It stops the database cleanly when Windows shuts down, takes a backup every two hours and before every stop, keeps the last ten, and can restore one or rebuild the data folder after a crash.

Updates and configuration changes follow the same rule:

  1. Back up first.
  2. Check with the real tool (httpd -t, or a scratch mariadbd).
  3. Roll back automatically if the server doesn't come back healthy.

Security defaults

  • Local-only by default. Apache, MariaDB and phpMyAdmin listen on 127.0.0.1.
  • Optional network access for testing on your phone over Wi-Fi. It opens your sites only, never phpMyAdmin or the database.
  • The database root password is stored encrypted with Windows DPAPI in ServNook's settings. phpMyAdmin signs in as root automatically on this PC; you can turn that off on a shared PC.

Moving from XAMPP

Database tools → Import from XAMPP copies your XAMPP databases and htdocs projects into ServNook, without changing XAMPP. Stop XAMPP's MySQL first. If it has crashed, there's a recovery option for that too.

How it compares

A short, fair comparison, with rows I've checked:

ServNook XAMPP Laragon
Licence MIT, free for any use Free Free for non-commercial use; commercial use needs a paid licence
Newest PHP 8.5 8.2 Bundled; add others yourself
Several PHP versions Side by side One per installation Yes
Automatic database backups Every 2 h and on stop Manual Manual
Sites at name.localhost Automatic Edit vhosts yourself Automatic (.test)

Laragon is a polished tool, and if it works for you, great. ServNook is for people who want the XAMPP way of working with current versions, at no cost for commercial use.

What's not done yet

  • Code signing. The installer isn't signed yet, so Windows SmartScreen may show "Windows protected your PC" the first time. Click More info → Run anyway. Every download has a .sha256 file next to it, the builds are made by GitHub Actions from the public source, and you can build it yourself. Free signing for open-source projects needs some traction first, so stars genuinely help.
  • Linux and macOS. ServNook is Windows-only for now.
  • Next: more polish from real-world feedback, which is where you come in.

Try it

  • Installer: ServNook-Setup.exe (always the latest version), or a portable zip from Releases
  • Scoop: scoop bucket add servnook https://github.com/hashencoder/servnook then scoop install servnook
  • winget: winget install ServNook.ServNook (in review, coming soon)

No account, no telemetry. If it's useful to you, a ⭐ on GitHub helps more people find it.

If something breaks on your machine, please open an issue or start a discussion. I'll read every comment here too.