This is a quick tutorial on how to set up a simple HTTP Web server with Python. Learn to create a web server in any desired directory a single command.
Note. This article has been written considering Python Version 3. For earlier versions, please refer here.
Creating a simple HTTP Server with Python
You can create a simple web server using a single command with the help of Python’s built-in
Using Command Line
Open command prompt or terminal in any desired directory for which you want to create a simple HTTP Server and enter the following command.
python -m http.server
python3 -m http.server
This command will start the server in the current directory.
Example. Here I’ve opened the command prompt and changed the directory to the desktop using the
cd command. Then I’ve simply used the command mentioned above to start the server.
As soon I pressed the enter key to execute the command, it started the webserver on the IP Address
0.0.0.0 and port
localhost:8000. Now you can enter this IP address with the port number in any of the browsers installed on your local system and you’ll be able to see the file structure of the directory for which you have created this web server.
Note. You need to make sure if the port you’re using for the server is not being used by any other process or application currently running on your system. If you’re having any port conflicts, things may not work as they should be.
You may specify a custom port number yourself as well. You just need to slightly modify your command by additionally specifying the desired port number in the command as described below. The command given below will start the server on localhost port 5000.
python -m http.server 5000
For a detailed reference of the Python HTTP server module, please visit this link.
Using a Python File
If you want to initiate an HTTP server with Python using a
.py file, here’s the code.
PORT = 8080
Handler = http.server.SimpleHTTPRequestHandler
with socketserver.TCPServer(("", PORT), Handler) as httpd:
print("Serving At Localhost PORT", PORT)
I hope you found this guide useful. If so, do share it with others who are willing to learn Python and other programming languages. If you have any questions related to this article, feel free to ask us in the comments section.
And do not forget to subscribe to WTMatter!