为了账号安全,请及时绑定邮箱和手机立即绑定

为本地主机创建一个受信任的自签名SSL证书(用于Express / Node)

为本地主机创建一个受信任的自签名SSL证书(用于Express / Node)

万千封印 2019-12-09 12:38:57
尝试遵循有关创建与本地主机一起使用的自签名证书的各种说明,大多数说明似乎是针对IIS的,但是我正在尝试使用Nodejs / Express。它们均无法正常工作,因为在安装证书时,该证书不受信任。这是我尝试失败的方法:https://www.digitalocean.com/community/articles/how-to-create-a-ssl-certificate-on-nginx-for-ubuntu-12-04/http://blogs.developerforce.com/developer-relations/2011/05/generating-valid-self-signed-certificates.htmlhttp://www.robbagby.com/iis/self-signed-certificates-on-iis-7-the-easy-way-and-the-most-effective-way/有人可以提供可以做到这一点的工作流程吗? 我可以安装证书,但是无法在chrome(v32)或IE(v10)中信任该证书。编辑:在评论中建议该问题不是受信任的证书根。我通过IE安装了该证书,但仍然不受信任
查看完整描述

3 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

您可以尝试使用openSSL生成证书。看看这个。


您将需要一个.key和.crt文件,以将HTTPS添加到节点JS Express服务器。生成此代码后,请使用此代码将HTTPS添加到服务器。


var https = require('https');

var fs = require('fs');

var express = require('express');


var options = {

    key: fs.readFileSync('/etc/apache2/ssl/server.key'),

    cert: fs.readFileSync('/etc/apache2/ssl/server.crt'),

    requestCert: false,

    rejectUnauthorized: false

};



var app = express();


var server = https.createServer(options, app).listen(3000, function(){

    console.log("server started at port 3000");

});

这在我的本地计算机以及部署此服务器的服务器上都可以正常工作。我在服务器中拥有的一个是从goDaddy购买的,但是localhost具有自签名证书。


但是,每个浏览器都抛出一个错误,指出不信任连接,您是否要继续。单击继续后,它工作正常。


如果有人曾经使用自签名证书绕过此错误,请告知。


查看完整回答
反对 回复 2019-12-09
  • 3 回答
  • 0 关注
  • 949 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信