我试图让 SSL https 在我的 Nodejs 服务器上工作,但浏览器返回 ERR_SSL_PROTOCOL_ERROR
code:
var express = require('express');
var https = require('https');
var http = require('http');
var fs = require('fs');
var options = {
key: fs.readFileSync('key.pem'),
cert: fs.readFileSync('cert.pem')
}
http.createServer(app).listen(80);
https.createServer(options, app).listen(443);
如果您的密钥未正确生成,就会发生这种情况。
很多地方都会告诉你这样做:
openssl genrsa -out key.pem
如果您使用的是 Mac,则此方法不起作用,您需要执行此操作以使密钥长度为 2048:
openssl genrsa -out key.pem 2048
总之,请执行以下步骤在 Mac 上创建正确的密钥:
openssl genrsa -out key.pem 2048
openssl req -new -key key.pem -out client.csr
openssl x509 -req -in client.csr -signkey key.pem -out cert.pem
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)