繁体   English   中英

使用SSL的Socket.io导致404()错误

[英]Socket.io with SSL reults in a 404() error

我最近在网站上启用了SSL,该网站的Node.js脚本正在使用Socket.io。 我尝试将Socket.io设置为在HTTPS上运行,但是在Chrome控制台中,当尝试从套接字获取数据时,它始终报告404()GET错误

客户端代码:

    var io = io.connect('https://domain.com:443');

服务器端

    var connections=0;
    var fs = require('fs');
   var https = require('https');
   var express = require('express');
var app = express();
var options = {
key: fs.readFileSync('./file.pem'),
cert: fs.readFileSync('./file.crt')
};
var serverPort = 443;
var server = https.createServer(options, app);
var io = require('socket.io')(server);
io.on('connection', function(socket){
connections=connections+1;
myconsolelog('[socket] a user connected. total connections: '+connections);


socket.emit('handshake',1);
socket.emit('online',connections);
request(steamstatusurl+'?pw='+accesspassword, function(error, response, body) {
    //myconsolelog('steamstatus: '+body);
    io.emit('steamstatus',body);
});
request(contentcreatorsurl+'?pw='+accesspassword, function(error, response, body) {
    //myconsolelog('steamstatus: '+body);
    io.emit('cc',body);
});
socket.on('disconnect', function(){
    connections=connections-1;
 myconsolelog('[socket] user disconnected total connections: '+connections);
    socket.emit('online',connections);

});

 });
server.listen(serverPort, function() {
console.log('server up and running at %s port', serverPort);
 });

经过数小时的努力,我发现cloudflare正在拦截套接字并阻止数据通过,然后我创建了一个带有灰色云的子域,现在可以正常工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM