skip to navigation
skip to content

SimpleHTTP404Server 0.2.0

A Python SimpleHTTPServer, but serves 404.html if a page is not found.

SimpleHTTP404Server: Easy testing of 404.html

SimpleHTTP404Server allows easy testing of static HTML providers that allow 404 response customization via a 404.html page. This includes at least GitHub and FastMail. It is a simple extension to SimpleHTTPServer, a built-in Python module which servers the current directory over HTTP.

If you server a static site using GitHub Pages or another static website provider, this module can help you test your 404 page before pushing changes to a live website.

First install the package using pip:

pip install SimpleHTTP404Server

Browse to the directory, and run the following to server it on port 8000.

python -m SimpleHTTP404Server

Or, if you’d like to specify a different port:

python -m SimpleHTTP404Server 1234

And that’s it! Now browse to a page that exists, maybe http://localhost:8000/index.html. And check that your 404.html page is properly loaded by checking a few different paths: * http://localhost:8000/404.html * http://localhost:8000/does-not-exist.html * http://localhost:8000/does/not/exist.html


Personally this is used to test any GitHub Pages sites I use, in particular my blog, which is build on Pelican. This is done via Fabric:

def serve():
    """Locally serve the blog."""
    local('cd {deploy_path} && python -m SimpleHTTP404Server {listen_port}'.format(**env))


Please let me know (by filing issues or pull requests) if you find any bugs or if you feel there are features missing.

v0.2.0: May 13, 2015

  • Switch back to a simple way of getting the 404.html page. The complicated way seems to imply it fixed server 404 pages from non-root directories…but it doesn’t, ensure your paths are absolute.

v0.1.2: May 13, 2015

  • Package readme, changelog.

v0.1.1: May 13, 2015

  • Supports packaged version uploaded to pypi.

v0.1.0: Feb. 24, 2015

  • Initial version, supports loading 404.html page from any subdirectory.
File Type Py Version Uploaded on Size
SimpleHTTP404Server-0.2.0-py2.py3-none-any.whl (md5) Python Wheel 2.7 2015-05-14 5KB
SimpleHTTP404Server-0.2.0.tar.gz (md5) Source 2015-05-14 3KB