Simple Local Web Server with Python

Add a comment

cheat-sheet articles are about code snippets that I need every once in a while, and which I constantly forget about.

Python’s standard distribution includes a simple HTTP server, which can be used to serve a local directory on the fly. Just open a terminal, change to the directory you want to share, and run:

python -m SimpleHTTPServer

Once the server is running, you will see the message:

Serving HTTP on port 8000 ...

In your browser, you can now access the server by surfing to http://localhost:8000. Moreover, you can also access the server from other machines in your network, not only from localhost.

If you want to change the server’s port, just provide an additional argument when launching it:

python -m SimpleHTTPServer 8888

Note: The above solution works only for Python 2, as Python 3 has reorganized some modules. If you are working with the latest Python version, you need to run:

python -m http.server

or, with a different port:

python -m http.server 8888