我正在使用用于nodejs && express的模块“ pem”为在本地Intranet上运行的演示Web服务器生成openssl自签名证书。
我遇到的问题是,当我尝试从Web服务器上加载页面时,收到错误消息:“客户端和服务器不支持通用的SSL协议版本或密码套件。”
我将如何利用pem(或其他方式)来允许我通过Intranet在https上运行Web服务器?
我正在ubtuntu机器上运行/测试它,也在Windows机器上进行测试。两者都产生相同的错误-通过Intranet访问的计算机将来自linux机器。我正在使用nodejs 10,并在Firefox,chrome,edge和safari上进行了测试
...
pem.createCertificate({ days: 365, selfSigned: true }, this.start);
...
start(err, keys) {
if (err) {
throw err
}
let server = https.createServer(app,
{ key: keys.serviceKey, cert: keys.certificate });
server.listen(port,
() => console.log(`API/NG running on https://localhost:${port}`)
);
}
根据pem模块的documentation,参数的顺序是相反的,如下所示:
var serverOptions = {
key: keys.serviceKey,
cert: keys.certificate
};
var app = express();
var server = https.createServer(serverOptions, app);