node.js - expressJS 4.x + 虚拟主机 + SSL/HTTPS

标签 node.js ssl express https virtualhost

我不太熟悉 SSL,所以我想知道我缺少什么来使 vhost + expressjs 以及 ssl 全部连接。我的代码适用于 virtualhost+ expressjs 但不适用于 https。 端口肯定是打开的。

var options = {
  key: fs.readFileSync("ca.key"),
  cert: fs.readFileSync("ca.crt")
}

var main = express();
if (!module.parent) main.use(logger('dev'));

main.get('/', function(req, res){
  // DO SOMETHING
});


var app = module.exports = express();
app.use(vhost('myappblahbblah.com', main));

var server = https.createServer(options, app);
server.listen(443);

最佳答案

使用server.addContext(hostname, context),在tls模块中显示,而https.Server继承自 tls.服务器

如果你不知道如何实际实现它,我写了一个非常小的包 vhttps那为你做了工作。查看它的 README.md,了解如何将它与 vhostexpress 一起使用。

关于node.js - expressJS 4.x + 虚拟主机 + SSL/HTTPS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38574239/

相关文章:

node.js - Jimp 没有从 aws 的 lambda 触发器中的 url 读取

VB.Net Web Scraper - 请求被中止 : Could not create SSL/TLS secure channel

java - SSLHandshakeException - java.security.cert.CertPathValidatorException : non-null policy tree required and policy tree is null

javascript - Grunt Task Runner 连接文件

javascript - 更好地使用异步IO

node.js - 如何在 session expressjs中存储套接字对象

node.js - 如何验证token是否过期

node.js - Express URL 参数功能不会将加号 (+) 解码为空格

javascript - 使变量像窗口一样可访问

java - 在 tomcat server.xml 中配置 SSL 密码,如 ${keystore.password}