我在这里遇到问题,当我测试我的SSL时会出现此消息:
Certificate chain is incomplete.
我已经在我的入口点文件中创建了http和https服务器,并且在某些浏览器中运行没有问题,但在其他浏览器中显示的消息显示该站点不安全,因为链不完整。
如何正确安装SSL以使链完整?
我是这样做的:
SSL FOLDER
|- credentials.js
|- site.pem
|- site-cert.pem
|- site-ca.pem
在我的凭证中,我有:
var fs = require('fs');
var credentials = {
key: fs.readFileSync(__dirname + '/mysite.pem', 'utf8'),
cert: fs.readFileSync(__dirname + '/mysite-cert.pem', 'utf8'),
ca: fs.readFileSync(__dirname + '/mysite-ca.pem', 'utf8'),
passphrase: 'secretphrase'
};
module.exports = credentials;
在我的切入点我有:
var app = require('../app');
var http = require('http');
var https = require('https');
var credentials = require('./ssl/credentials');
http.createServer(app).listen(3000, app.get('ip'), function() {
console.log('Running on port 3000, in ' + app.get('env') + ' mode.');
});
https.createServer(credentials, app).listen(443, app.get('ip'), function() {
console.log('Running on port 443, in ' + app.get('env') + ' mode.');
});
也许我忘记了什么?
我没有解决链条的问题。
答案 0 :(得分:0)
您可能需要添加链接到根CA证书的中间CA证书。见How to setup EV Certificate with nodejs server
使用在线SSL测试工具检查您的域,看看您的服务器是否正在发送链中的所有证书。