ERR_SSL_PROTOCOL_ERROR - Socket.io和Node.js

时间:2016-08-29 19:42:56

标签: javascript node.js sockets ssl

我正在使用Node.js服务器并使用Socket.io来管理Socket的连接,但我遇到了SSL证书的问题。 很多用户可以正常访问Node.js服务器,但其他用户无法访问,他们收到此错误: User error

当我设置我的服务器时,我有这个SSL选项:

var privateKey = fs.readFileSync('/root/cert/key.key', 'utf8').toString();
var certificate = fs.readFileSync('/root/cert/cert.crt', 'utf8').toString();
var ca = fs.readFileSync('/root/cert/ca.crt').toString();
var credentials = { key: privateKey, cert: certificate, ca: ca };
var app = express();
var httpsServer = https.createServer(credentials, app);
var io = require('socket.io')(httpsServer);

有人知道如何解决此错误?问题是只有一些用户收到此错误。

2 个答案:

答案 0 :(得分:0)

据我所知,您缺少https服务器的监听端口。

var httpsServer = https.createServer(credentials, app).listen(<port>);

答案 1 :(得分:-3)

看起来您的apache2配置不正确。 检查您是否启用了配置文件:

a2ensite default-ssl

然后重新启动服务器。