javascript - 带有 ssl 和静态文件服务的 node.js

标签 javascript node.js ssl

我有一个问题,当我添加 app.use(express.static(__dirname + '/public')) 文件由 https 常规服务器提供。 有人试过这样做吗?

//require engines
var express     = require('express');
var session     = require('express-session');
var bodyParser  = require('body-parser')

//init express engine
var app = express();

//using
app.use(bodyParser.json());
app.use(express.static(__dirname + '/public'));

var activeport = process.env.PORT ? process.env.PORT : 4003;

if (process.env.NODE_ENV === "production") {

    var fs = require('fs');
    var https = require('https');

    var options = {
        key: fs.readFileSync(global.appRoot + '/xxx.pem'),
        cert: fs.readFileSync(global.appRoot + '/yyy.crt'),
        passphrase: "123123",
        requestCert: false,
        rejectUnauthorized: false
    };

    var server = https.createServer(options, app).listen(activeport, function () {
        console.log('Server listening on port ' + activeport);
    });
}
else {
    app.listen(activeport, function () {
        console.log('Server listening on port ' + activeport);
    });
}

最佳答案

试试这个:

const path = require('path'); // <--- Require this
app.use(express.static(path.join(__dirname, '/dist')));

关于javascript - 带有 ssl 和静态文件服务的 node.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43237720/

相关文章:

.htaccess - 带购物车的子域 SSL 到域

ssl - 强制使用 SSL 进行托管

javascript - 为什么同步监听子进程 “after” 产生它被认为是安全的?

node.js - 扩展也是一个函数的 .d.ts 模块

mongodb string 比 float 占用的空间小

java - Glassfish v4 和 SSL - 管理员不再工作

javascript - ES6 : Using generator in asynchronous calls

javascript - jquery 函数调用不起作用

javascript - 防止通过双击执行两次 jQuery post 请求

javascript - NodeJS动态读取目录