Socket.io - 通过 Cloudflare 的 SSL
Socket.io - SSL through Cloudflare
我已经通读了几乎所有关于如何通过 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()
我不确定我的端口是否不正确或者我完全遗漏了一些东西。
我很乐意提供更多代码片段。
提前致谢
你只是在错误的端口上监听。 SSL 流量通常在 443 上提供服务,为了解决这个问题,您应该替换为:
server.listen(2096, "IP Address");
像这样:
server.listen(443);
我已经通读了几乎所有关于如何通过 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()
我不确定我的端口是否不正确或者我完全遗漏了一些东西。
我很乐意提供更多代码片段。
提前致谢
你只是在错误的端口上监听。 SSL 流量通常在 443 上提供服务,为了解决这个问题,您应该替换为:
server.listen(2096, "IP Address");
像这样:
server.listen(443);