NodeJs加载站点的所有页面不存在则404

 演示

  链接:https://pan.baidu.com/s/1TZ351m3wUWZpq46qGbejjg 密码:ijj5

  

 代码:

var http = require("http");
var fs = require("fs");
var hostname = '127.0.0.1';
var port = '3000';

var server = http.createServer(function(req, res) {
    var path = req.url;
    if (path == "/") {
        path = "/index.html";
    }
    sendFile(res, path);
});

server.listen(port, hostname);

function sendFile(res, path) {
    console.log(path);
    var path = process.cwd() + path;
    //判断文件是否存在
    if (fs.existsSync(path)) {
        // 存在解析
        fs.readFile(path, function(err, stdout, stderr) {
            if (!err) {
                var data = stdout;
                var type = path.substr(path.lastIndexOf(".") + 1, path.length);
                res.writeHead(200, { 'Content-type': "text/" + type });
                res.write(data);
            }
            res.end();
        });
    } else {
        // 不存在进入404页面
        fs.readFile('./404.html', function(err, data) {
            res.end(data);
        });
    }

}
原文地址:https://www.cnblogs.com/wangyang0210/p/9764395.html