From 5821a949035a5e098a2c6b395818f5efa1c66f8e Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Tue, 22 Oct 2013 21:07:55 +0200 Subject: wip --- test/data/my-webapp/root/bin/app.js | 39 +++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100755 test/data/my-webapp/root/bin/app.js (limited to 'test/data/my-webapp/root/bin/app.js') diff --git a/test/data/my-webapp/root/bin/app.js b/test/data/my-webapp/root/bin/app.js new file mode 100755 index 0000000..992a701 --- /dev/null +++ b/test/data/my-webapp/root/bin/app.js @@ -0,0 +1,39 @@ +#!/usr/bin/env nodejs + +var http = require("http"), + url = require("url"), + path = require("path"), + fs = require("fs") + port = process.env.PORT || 8888; + +http.createServer(function(request, response) { + + var uri = url.parse(request.url).pathname + , filename = path.join(process.cwd(), uri); + + path.exists(filename, function(exists) { + if(!exists) { + response.writeHead(404, {"Content-Type": "text/plain"}); + response.write("404 Not Found\n"); + response.end(); + return; + } + + if (fs.statSync(filename).isDirectory()) filename += '/index.html'; + + fs.readFile(filename, "binary", function(err, file) { + if(err) { + response.writeHead(500, {"Content-Type": "text/plain"}); + response.write(err + "\n"); + response.end(); + return; + } + + response.writeHead(200); + response.write(file, "binary"); + response.end(); + }); + }); +}).listen(parseInt(port, 10)); + +console.log("Static file server running at\n => http://localhost:" + port + "/\nCTRL + C to shutdown"); -- cgit v1.2.3