UNPKG

monhu-http

Version:

MonHu作成の、超簡単HTTPサーバー

66 lines (59 loc) 1.64 kB
/* MonHu HTTP MonHu作成の、超簡単HTTPサーバー create by monhu */ var http = require("http"); var fs = require('fs'); function getType(_url) { var types = { ".html": "text/html", ".css": "text/css", ".js": "text/javascript", ".png": "image/png", ".gif": "image/gif", ".svg": "svg+xml" } for (var key in types) { if (_url.endsWith(key)) { return types[key]; } } return "text/plain"; } var d = "views" var e404 var e500 var e403 var server = http.createServer(function (req, res) { if (req.url == "/.env") { res.statusCode = 403; res.end(e403); return; } console.log(`Web: ${req.url}`) var url = d + (req.url.endsWith("/") ? req.url + "index.html" : req.url); if (fs.existsSync(url)) { fs.readFile(url, (err, data) => { if (!err) { res.writeHead(200, { "Content-Type": getType(url) }); res.end(data); } else { res.statusCode = 500; res.end(e500); } }); } else { res.statusCode = 404; res.end(e404); } }); var port = 3000; server.listen(port, function () { console.log("あなたのサイトが開きました!\nhttp://localhost:" + port); }); exports.config = function (po, de, err8, err7, err5) { d = de == null ? "views" : de port = po == null ? 3000 : po e403 = err7 == null ? "" : err7 e404 = err8 == null ? "" : err8 e500 = err5 == null ? "" : err5 }