I am looking for a light-weight HTTP server, to server static web pages on localhost for testing purposes.

That is all the functionality that I require. If the requested URL exists, then return it, else 404.

Must run on Windows XP, 32 bit version, and require no admin rights.


4 Answers 4


Knowing, from other questions that you have python installed, presumably at least python 2.5.4 on XP. All you need to run a basic web server on XP with no admin rights is simply cd to the root directory of your static web structure, (the one with the top index.html in), and then type:

python -m SimpleHTTPServer 8000

This will start, on that machine, a simple, static, server on port 8000 alternatively you can put into a simple script, in the same directory:

import SimpleHTTPServer
import SocketServer

PORT = 8000

Handler = SimpleHTTPServer.SimpleHTTPRequestHandler

httpd = SocketServer.TCPServer(("", PORT), Handler)

print "serving at port", PORT

You can also look at portable python which will allow you to do the same but you might have to add a chdir to the script.

Both examples are taken from the python 2 manuals.

  • That sounds like a very neat solution. I will check it when I get back to work on Monday. Thanks! Note: i have a sister-question asking about an FTP server - softwarerecs.stackexchange.com/questions/30985/…
    – Mawg
    Commented Apr 1, 2016 at 17:57
  • Let's hope that the solution for FTP is as simple - and as Pythonic
    – Mawg
    Commented Apr 4, 2016 at 10:20
  • 1
    @Mawg - there is a equivalent ftp solution using twisted if you don't mind a dependency or two. Commented Apr 4, 2016 at 16:53
  • I would be curious, although I already accepted an answer on the sister question. Pure Python would be useful
    – Mawg
    Commented Apr 4, 2016 at 18:40
  • 1
    stackoverflow.com/questions/4994638/… first answer Commented Apr 5, 2016 at 6:12

The easiest solution I've found is a program called EasyPHP. It's really simple to use and requires absolutely no admin rights. It's also free and includes support for PHP, MySQL, and backed by Apache. I've used this quite a bit for a wide range of purposes and it's easy to configure if needed. You're going to want to use the "Devserver" edition and version 14.1 for XP support. It's about 35 megabytes.

EasyPHP - Devserver (free)

Devserver allows you to fit your needs and allows you to setup a local server with the same characteristics as your production server (if you have one). You can develop locally anywhere (at home, at work, on your laptop...) thanks to the portability of the system.

Devserver UI


There's also XAMPP which has compatible versions for Windows XP. XAMPP, to my understand, is one of the most used WAMP options and has quite a bit of support. It's open source and has a lot of add-on options provided by Bitnami. The version you're going to want to use is 1.8.2, again for compatibility on XP.

XAMPP [v1.8.2] (open-source)

XAMPP is a completely free, easy to install Apache distribution containing MariaDB, PHP, and Perl. The XAMPP open source package has been set up to be incredibly easy to install and to use.

XAMPP webapp UI

XAMPP Control Panel UI
(source: cbsi.com)

  • 1
    I use it at home. I D/Led it in the office, just before leaving on Friday. I will try it on Monday. It would be good, as I already know it, although @Steve 's solution might be more elegant, as it requires no install. I will let you know.
    – Mawg
    Commented Apr 2, 2016 at 6:37

You could either try Baby Web Server or HFS.

Both as single executables that require no admin rights nor an installation. Just download, double click and you're good to go.

Baby Web Server

Baby Web Server

This program was build as an alternative for Microsoft's IIS. The main goal was to design a simple web server with support for ASP. Setting up Baby ASP Web Server is very easy: copy the executable to a directory of your choice, set the directory of your webpages and it's ready to run!



You can use HFS (HTTP File Server) to send and receive files. Its different from classic file sharing because it uses web technology to be more compatible with todays Internet. It also differs from classic web servers because its very easy to use and runs "right out-of-the box". Access your remote files, over the network.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.