В настоящее время трудно работать с большинством обратных прокси (nginx, HAproxy) при работе с веб-сокетами.Я думал, что можно было бы сделать что-то вроде этого:
io.connect("http://yourdomain:8080/chat"); // with namespace
Таким образом, пример рабочего процесса будет:
- nginx прослушивает порт 80
- nodejs прослушивает порт 8080
- socket.io прослушивает порт 8080 через приложение nodejs
- nginx передает любые запросы через порт 80 на nodejs на 8080
- socket.io клиент подключается напрямую к узлу / серверу сокетов на порту 8080 и связывается напрямую без участия обратного прокси
Я не могу заставить его работать - это невозможно, или я что-то не так делаю?
РЕДАКТИРОВАТЬ: Это действительно работает, моя проблема отправляла MongoDB _id
поля для клиента.
Я написал более подробное описание здесь