利用node.js建立靜態web伺服器
阿新 • • 發佈:2018-10-31
//引入http服務 var http = require('http'); //引入fs模組 var fs = require('fs'); //引入url模組 var url = require('url'); //引入path模組 var path = require('path'); //引入自定義模組 var mime = require('./static/module/getmime.js'); //建立服務 http.createServer((req,res) => { //獲取當前路徑 var pathname = url.parse(req.url).pathname; //獲取檔案的字尾名 var extname = path.extname(pathname) //沒有指定檔案給出預設 if(pathname == '/'){ pathname = '/index.html'; } if(pathname != '/favicon.ico'){//過濾請求/favicon.ico //讀取檔案 console.log(pathname) fs.readFile('static'+pathname,(err,data) => { if(err){ //讀取檔案錯誤展示404頁面 fs.readFile('static/html/404.html',(error,data404) => { //檔案寫入頭 res.writeHead(404,{"Content-Type":"text/html;charset='utf-8'"}); //檔案寫入 res.write(data404); //結束響應 res.end(); }) }else{ //獲取檔案型別 var mimeModule = mime.getmime(extname); console.log(mimeModule) //檔案寫入頭 res.writeHead(200,{"Content-Type":""+mimeModule+";charset='utf-8'"}); //檔案寫入 res.write(data); //結束響應 res.end(); } }) } }).listen(8080)