On-the-Fly Web Server

Most of you have a web server installed on your network somewhere. In fact, most of you probably have several. In a pinch, however, getting to the web directory can be difficult. Thankfully, there's a super-simple, incredibly awesome one-liner you can type to get a functional web server running and serving out your current directory:

python -m SimpleHTTPServer

That one-liner (or the Python 3 alternative, python -m http.server) will start a web server on port 8000, serving files from your current directory. Usually pressing ^C will stop the server, but if not, some more command-line fu will stop the process as well:

kill `ps | grep SimpleHTTP | grep -v grep | awk '{print $1}'`

It's possible to change the port by adding it after the SimpleHTTPServer, but since you're running as a user, you won't be able to run on a privileged port.

(Thanks to jafraldo on http://www.commandlinefu.com for the kill script.)


Shawn Powers is a Linux Journal Associate Editor. You might find him on IRC, Twitter, or training IT pros at CBT Nuggets.