Я бегу Meteor на AWS Elastic Beanstalk. Все и работает кроме того, что он не работает WebSockets со следующей ошибкой:Как настроить nginx на эластичный beanstalk AWS для балансировки Meteor?
WebSocket connection to 'ws://MYDOMAIN/sockjs/834/sxx0k7vn/websocket' failed: Error during WebSocket handshake: Unexpected response code: 400
Мой unstanding было добавить что-то вроде:
proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";
к прокси-конфигурации, через мой конфигурационный файл YML ,
Через мой конфигурационный файл .exbextension:
files:
"/etc/nginx/conf.d/proxy.conf" :
mode: "000755"
owner: root
group: root
content: |
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
Я ssh'd на сервер, и я могу видеть proxy.conf с этими двумя линиями в нем.
Когда я попал на свой веб-сервер, я все еще вижу ошибку «Ошибка при попытке подключения к WebSocket:».
У меня есть Beanstalk нагрузка сконфигурировано с палкой сессий и следующие порты:
КСТАТИ я видел https://meteorhacks.com/load-balancing-your-meteor-app.html, и я попытался:
Enable HTTP load balancing with Sticky Session on Port 80 Enable TCP load balancing on Port 8080, which allows websocket
Но никак не мог получите эту работу.
Добавление еще один выстрел в какой-то YAML, что здесь не работает ":? https://gist.github.com/adamgins/0c0258d6e1b8203fd051
Любая оцененная помощь
Примечание. У меня есть одна открытая проблема. Мне пришлось отключать липкие сессии при замене протокола на TCP. У меня есть открытый вопрос, чтобы понять, верну ли я это. – aginsburg
ОК, обсуждение того, как важны веб-узлы здесь: https://groups.google.com/forum/#!topic/meteor-talk/M6L_Ihpu-e0, если у вас есть какие-либо данные, пожалуйста, входите в – aginsburg
У меня в настоящее время есть dev/промежуточного экземпляра в ebs без настройки балансировки нагрузки (для параметра масштабирования установлено значение «один экземпляр»). Я полагаю, это означает, что мне не нужно беспокоиться об этом шаге? – gb96