Socket.io – 通过Cloudflare的SSL
我已经阅读了几乎所有可能的关于如何通过socket.io接收SSL的教程,我似乎无法使其工作。
我的后端JS如下:
var express = require('express'); var options = { key: fs.readFileSync('/key.key'), cert: fs.readFileSync('/crt.crt'), requestCert: true }; var app = express(); var server = require('https').createServer(options, app); var io = require('socket.io').listen(server); server.listen(2096, "IP Address");
前台JS:
SOCKET = io('https://name.com:443', {secure: true});
我正在使用完整的SSL,在我的服务器上安装了cloudflare签名的证书。
连接时我也收到以下错误:
POST https://name.com/socket.io/?EIO=3&transport=polling&t=LcBk2Vk 404()
我不确定我的端口是不正确的还是我完全错过了一些东西。
我很高兴提供更多的代码片段。
提前致谢
你只是听错了端口。 SSLstream量通常在443以上,为了解决这个问题,你应该replace:
server.listen(2096, "IP Address");
有了这样的事情:
server.listen(443);