сервер socketio не работает

#node.js #sockets #socket.io

#node.js #сокеты #socket.io

Вопрос:

У меня это в моем server.js файл

 var app = require('express');
var http = require('http');
var server = app();
server.use(function (req, res, next) {
        res.setHeader('Access-Control-Allow-Origin', '*');
        res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
        res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
        res.setHeader('Access-Control-Allow-Credentials', true);
        next();
    }
);

server.listen(81);

var io = require('socket.io').listen(82);;


io.on('connection', function (socket) {
  io.emit('this', { will: 'be received by everyone'});

  socket.on('private message', function (from, msg) {
    console.log('I received a private message by ', from, ' saying ', msg);
    io.emit('done','done from server');
  });

  socket.on('disconnect', function () {
    io.sockets.emit('user disconnected');
  });
});
  

Локально он работает нормально, но когда я развертываю его на своем веб-сайте и пытаюсь подключиться к нему с сервера, он всегда выдает мне эту ошибку

У меня есть клиент javascript, подобный этому

 var socket = io.connect('ws://xxxxxxxxx.xxxxxxxx.net:82/');
  

и это всегда выдает мне эту ошибку

 GET http://xxxxxxxxx.xxxxxxxx.net:82/socket.io/?EIO=2amp;transport=pollingamp;t=1403458443180-0 net::ERR_CONNECTION_TIMED_OUT socket.io-1.0.0-pre5.js:2
  

может кто-нибудь мне помочь и сообщить, почему всегда тайм-аут?

Комментарии:

1. Похоже, что брандмауэр блокирует 82 порт. Вы можете попробовать проксировать с 80 на 82

2. @CuriousGuy то же самое произошло с 80 и 3000, это не порт