【问题标题】:Cloudflare SSL handshake failed with socket.ioCloudflare SSL 握手失败,socket.io
【发布时间】:2017-11-02 23:58:35
【问题描述】:

这是我正在使用的代码:

"use strict"
var express = require('express');
var https = require('https');
var app = express();
var bodyParser = require('body-parser');
app.enable('trust proxy');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
    extended: true
}));
var fs = require('fs');
var options = {
    cert: fs.readFileSync('ssl_certs/cert.pem'),
    key: fs.readFileSync('ssl_certs/privkey.pem'),
    requestCert: true,
};
var server = https.createServer(options, app);
var io = require('socket.io')(server);
var port = 2083
server.listen(port, "0.0.0.0", function() {
    console.log('Listening on port *:' + port + '.');
});

io.on('connection', function(socket) {
    console.log('connected!')
});

console.log("Running node " + process.version);

如果我使用的是 Node.js 版本 6.11.2,此代码可以正常工作,但是在 Node.js 版本 8.9.0 上,它在尝试建立连接时返回 525 错误。

如果这很重要,我的 SSL 设置在 Cloudflare 上设置为完全(严格)。

Node v8 中是否有我不知道的 SSL 变化?

任何帮助将不胜感激。

谢谢!

【问题讨论】:

  • 它现在从 Node.js 8.9.4 开始工作

标签: node.js ssl websocket socket.io cloudflare


【解决方案1】:

已知 SSL 问题会在节点 8.5.0 之后发生。最好的解决方案是降级到 8.5.0 或更低版本,直到几天后从节点端解决所有问题。

来源:Issue

更多更新:Updates

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-23
    • 2018-07-28
    • 2015-12-21
    • 2012-10-11
    • 2015-03-16
    相关资源
    最近更新 更多