我正在尝试将ssl证书添加到我的节点服务器,但我的网页继续加载http而不是https。我想知道是否有人可以指出我正确的方向。有点拉我的头发大声笑。以下是一些重要代码的片段:
var options = {
key: fs.readFileSync('/home/ec2-user/key.pem'),
cert: fs.readFileSync('/home/ec2-user/cert.pem'),
ca: fs.readFileSync('/home/ec2-user/ca.pem'),
};
var app = express();
app.set('root', __dirname);
https.createServer(options, app);
app.listen(APP_PORT, APP_HOST);
// Listener endpoint; handled in middleware
app.get('/listen', function(){});
答案 0 :(得分:4)
您正在设置Express应用程序而不是HTTPS服务器。请改用:
var https = require('https');
var express = require('express');
var app = express();
var options = {
key: fs.readFileSync('/home/ec2-user/key.pem'),
cert: fs.readFileSync('/home/ec2-user/cert.pem'),
ca: fs.readFileSync('/home/ec2-user/ca.pem')
};
app.set('root', __dirname);
app.get('/listen', function(req, res) {
// respond here
});
var server = https.createServer(options, app);
server.listen(APP_PORT, APP_HOST);
如果您的计算机上没有多个地址,则无需为应用程序指定IP。