gpt4 book ai didi

node.js - Node js 中的 ERR_SSL_VERSION_OR_CIPHER_MISMATCH

转载 作者:太空宇宙 更新时间:2023-11-03 13:31:40 25 4
gpt4 key购买 nike

我最近从 Positive ssl 购买了个人 ssl 证书。在我通过激活和验证解决了所有问题之后,我终于能够下载证书文件了。

我得到的文件是:

www.niknet.ddns.net.ca-bundle
www.niknet.ddns.net.crt
www.niknet.ddns.net.p7b

之前我只用过.key.crt它工作得很好,但现在我正在使用 .ca-bundle.crt 文件这是我用来将这些文件包含到 Node js 中的 ssl 库中的代码

var httpPort = process.env.PORT || 80;
var httpsPort = process.env.PORT || 443;
var server = http.createServer(app).listen(httpPort);
var server = https.createServer({
secureProtocol : 'TLSv1_2_server_method',
ciphers : "AES128-GCM-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH",
honorCipherOrder : true,
ca: fs.readFileSync(__dirname + '/niknet_ddns_net.ca-bundle'),
cert: fs.readFileSync(__dirname + '/niknet_ddns_net.crt')

},app).listen(httpsPort);
var io = require('socket.io').listen(server);

但我这辈子都无法让证书正常工作。我刚收到这个错误

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

我一直在阅读其他帖子并尝试添加他们的代码但没有任何效果。我还在某处读到 node.js 的 ssl 或 tls 库已经过时,我的证书可能太新了。如果是这样,是否还有其他任何我可以使用的第三方 ssl 库?

最佳答案

运行这个命令:

openssl req -nodes -new -x509 -keyout server.key -out server.cert

请记住将其设置为本地主机:

通用名称(例如服务器 FQDN 或您的名称)[]: localhost

然后

 https.createServer({
key: fs.readFileSync('./ssl/server.key'),
cert: fs.readFileSync('./ssl/server.cert')
},app)

如果在 createServer() 的第一个参数中没有正确指示添加的证书,将出现 ERR_SSL_VERSION_OR_CIPHER_MISMATCH。

关于node.js - Node js 中的 ERR_SSL_VERSION_OR_CIPHER_MISMATCH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52681279/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com