Created
August 27, 2010 22:28
-
-
Save rauchg/554303 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env node | |
var connect = require('connect'), | |
cwd = process.cwd(), | |
sys = require('sys'); | |
var usage = '' | |
+ '\x1b[1mUsage\x1b[0m: connect [options] [PATH]\n' | |
+ '\n' | |
+ '\x1b[1mOptions\x1b[0m:\n' | |
+ ' -v, --version Output connect version\n' | |
+ ' -p, --port Port to listen to (defaults to 8080)\n' | |
+ ' -H, --host Host to listen to (defaults to all)\n' | |
+ ' -h, --help Output help information\n'; | |
var port = 8080; | |
var host = null; | |
var args = process.argv.slice(2), | |
path = '.'; | |
while (args.length) { | |
var arg = args.shift(); | |
switch (arg) { | |
case '-h': | |
case '--help': | |
abort(usage); | |
break; | |
case '-p': | |
case '--port': | |
port = Number(args.shift()); | |
break; | |
case '-H': | |
case '--host': | |
host = args.shift(); | |
break; | |
case '-v': | |
case '--version': | |
abort(connect.version); | |
break; | |
default: | |
path = arg; | |
} | |
} | |
var server = connect.createServer( | |
connect.staticProvider(cwd) | |
); | |
server.listen(port, host); | |
sys.error('HTTP server listening on http://' + (host ? host : '*') + ':' + port); | |
/** | |
* Exit with the given `str`. | |
* | |
* @param {String} str | |
*/ | |
function abort(str) { | |
sys.error(str); | |
process.exit(1); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment