Skip to content

Instantly share code, notes, and snippets.

@saidler
Forked from willurd/web-servers.md
Created June 7, 2013 00:22
Show Gist options
  • Save saidler/5726195 to your computer and use it in GitHub Desktop.
Save saidler/5726195 to your computer and use it in GitHub Desktop.

Each of these commands will run an ad hoc http server in your current directory. Use this power wisely.

Python 2.x

$ python -m SimpleHTTPServer 8000

Python 3.x

$ python -m http.server 8000

Ruby

Credit: http://barkingiguana.com/2010/04/11/a-one-line-web-server-in-ruby/

$ ruby -rwebrick -e'WEBrick::HTTPServer.new(:Port => 8000, :DocumentRoot => Dir.pwd).start'

Perl

Credit: http://www.perlmonks.org/?node_id=865239

$ perl -MCPAN -e "install HTTP::Server::Brick"   # install dependency
$ perl -MHTTP::Server::Brick -e '$s=HTTP::Server::Brick->new(port=>8000); $s->mount("/"=>{path=>"."}); $s->start'

Node.js #1

$ npm install -g http-server   # install dependency
$ http-server -p 8000

Node.js #2

# Runs in Node.js using node-static. No directory listings.
$ npm install -g node-static   # install dependency
$ static -p 8000

PHP >= 5.4

Credit:

php -S 127.0.0.1:8000

Erlang

Credit: https://gist.github.com/willurd/5720255/#comment-841166 (with the addition of some basic mime types)

erl -s inets -eval 'inets:start(httpd,[{server_name,"NAME"},{document_root, "."},{server_root, "."},{port, 8000},{mime_types,[{"html","text/html"},{"htm","text/html"},{"js","text/javascript"},{"css","text/css"},{"gif","image/gif"},{"jpg","image/jpeg"},{"jpeg","image/jpeg"},{"png","image/png"}]}]).'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment