【问题标题】:How to fix Node.js HTTPS Server "SSL Error"?如何修复 Node.js HTTPS 服务器“SSL 错误”?
【发布时间】:2014-08-04 04:59:20
【问题描述】:

我正在尝试将 express 与 node.js https 服务器结合使用,但我在连接时收到警告。


我的代码是:

var WebSocketServer = require('ws').Server
    , https = require('https')
    , fs = require('fs')
    , express = require('express')
    , app = express();

app.use(express.static(__dirname + '/public'));

var options = {
    rejectUnauthorized: false,
    requestCert: true,
    agent: false,
    key: fs.readFileSync('private/key.pem'),
    cert: fs.readFileSync('private/cert.pem')
};

var server = https.createServer(options, app);
server.listen(8888);

var MainServer = new WebSocketServer({server: server});

如何解决此警告(以及有效地解决身份未验证问题)?

谢谢!

【问题讨论】:

    标签: javascript node.js ssl express https


    【解决方案1】:

    这是您的浏览器发出的警告。当您采用解决方案时,购买证书并与您的域相关联(准确地说是通配符或根证书),警告就会消失,一个漂亮的锁会向世界展示您的网站是多么安全。 :-)

    【讨论】:

    • 无需购买证书。 Startcom 免费为您提供服务器证书。大多数(所有?)桌面和移动浏览器都信任它们。
    【解决方案2】:

    您需要从证书颁发机构购买 SSL 证书。谷歌搜索将显示许多价格差异很大的供应商。如果您只是开发并且它不是生产网站,您可以找到free certsvery cheap certs。这么多证书价格昂贵(> 200 美元)的原因是供应商提供了保证证书安全性的保险单。尽管如果您的证书遭到破坏并且您向公司要求保险索赔,但要证明证书本身是由于故障造成的非常困难且极不可能。

    【讨论】:

    • Startcom 免费为您提供服务器证书。大多数(所有?)桌面和移动浏览器都信任它们。看看 Peter Gutmann 对那些数百或数千美元的证书有什么看法:PKI Me Harder
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-02
    • 2015-12-01
    • 2018-03-24
    • 2019-04-13
    • 1970-01-01
    • 2021-01-09
    相关资源
    最近更新 更多