【发布时间】:2020-04-09 16:01:39
【问题描述】:
我正在运行一个 Node.js 服务器,我正在尝试在本地托管此服务器,但没有遇到任何 SSL 错误。
这是我为创建证书所做的。我在 Visual Studio Code 中打开终端并输入以下内容:
$ openssl req -nodes -new -x509 -keyout server.key -out server.cert
这在我的当前目录中创建了一个 .cert 和一个 .key 文件。
接下来,在我的 app.js 文件中,我添加了这个:
https.createServer({
key: fs.readFileSync('./server.key'),
cert: fs.readFileSync('./server.cert')//,
//passphrase: ''
}, app)
.listen(3000);
然后我在终端窗口中运行命令 node app.js 来启动 Node.js 服务器。
然后我访问了https://localhost:3000/ 并得到以下信息 - 注意“不安全” - 这就是我想要摆脱的:
此时,我进行了一些谷歌搜索,发现导出此证书并直接导入 Chrome 可能会有所帮助。我通过单击“不安全”按钮并单击证书来做到这一点:
然后,点击详细信息和“复制到文件”:
然后,我在下一个屏幕上单击“下一步”并选择DER encoded binary X.509 (.CER):
我点击了下一步并将导出的证书命名为 serverMike.cer:
然后,我点击下一步并完成:
导出成功:
最后,我在 Chrome 设置中导入这个导出的证书,然后选择“受信任的根证书颁发机构”作为放置这个证书的位置:
然后我单击下一步并完成。我关闭了 Chrome 并重新打开它,访问了 https://localhost:3000 并收到相同的“不安全”消息。是不是我做错了什么?
【问题讨论】: