// http://127.0.0.1:9001 // http://localhost:9001 var server = require('http'), url = require('url'), path = require('path'), fs = require('fs'); function serverHandler(request, response) { var uri = url.parse(request.url).pathname, filename = path.join(process.cwd(), uri); fs.exists(filename, function(exists) { if (!exists) { response.writeHead(404, { 'Content-Type': 'text/plain' }); response.write('404 Not Found: ' + filename + '\n'); response.end(); return; } if (filename.indexOf('favicon.ico') !== -1) { return; } var isWin = !!process.platform.match(/^win/); if (fs.statSync(filename).isDirectory() && !isWin) { filename += '/index.html'; } else if (fs.statSync(filename).isDirectory() && !!isWin) { 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; } var contentType; if (filename.indexOf('.html') !== -1) { contentType = 'text/html'; } if (filename.indexOf('.js') !== -1) { contentType = 'application/javascript'; } if (contentType) { response.writeHead(200, { 'Content-Type': contentType }); } else response.writeHead(200); response.write(file, 'binary'); response.end(); }); }); } var app; app = server.createServer(serverHandler); app = app.listen(process.env.PORT || 9001, process.env.IP || "0.0.0.0", function() { var addr = app.address(); console.log("Server listening at", addr.address + ":" + addr.port); });