Подтвердить что ты не робот

Веб-узлы с socket.io на AWS Elastic Beanstalk

Я пытаюсь настроить websocket-сервер с socket.io на AWS Elastic Beanstalk. Получил первоначальный запрос к /socket.io/1/?t=xxxx вверх и запущен, но квитирование с помощью websocket завершилось с ошибкой:

WebSocket connection to 'ws://xxxxxx.elasticbeanstalk.com/socket.io/1/websocket/a4DTCN2BeJZuiSaphVyz' failed: Unexpected response code: 502 

От googling и просмотра ошибки 502 (Bad Gateway), похоже, что-то связано с прокси-сервером nginx. Итак, как мне настроить nginx для работы с веб-сайтами?

Не удается найти что-либо в документации AWS о настройке для веб-сайтов.

4b9b3361

Ответ 1

вы можете попытаться решить проблему настройки nginx, но если вы используете только веб-порты, было бы проще отключить все прокси и напрямую подключиться.

это находится под окружением вашего приложения на панели инструментов эластичного бобового стебля. Там выпадающая кнопка справа отмечена "Действия". Выберите "Редактировать/загрузить конфигурацию"

enter image description here

Ответ 2

Существует существенный недостаток подхода ditch-nginx. Вам нужно будет переместить https в node, а также в вызовы socket.io. Гораздо проще управлять https в конфигурации сервера, а не в node.

Если вам не нужны https, я предлагаю сбросить прокси-сервер и просто перейти непосредственно к node.

Ответ 3

Socket.io по умолчанию используется для порта 8080. Убедитесь, что в вашей группе безопасности EC2 включен порт 8080, добавив "Входящее > Пользовательское правило TCP" в AWS Admin > EC2 > Группы безопасности.