diff --git a/static.js b/static.js new file mode 100644 index 00000000..a0684679 --- /dev/null +++ b/static.js @@ -0,0 +1,35 @@ +var http = require("http"), + url = require("url"), + path = require("path"), + fs = require("fs") + port = process.env.C9_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 += '/editor.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(port, "0.0.0.0"); \ No newline at end of file