Я запускаю Meteor на AWS Elastic Beanstalk. Все работает и запускается, за исключением того, что он не запускает веб-узлы со следующей ошибкой:
WebSocket connection to 'ws://MYDOMAIN/sockjs/834/sxx0k7vn/websocket' failed: Error during WebSocket handshake: Unexpected response code: 400
Мое замечание заключалось в том, чтобы добавить что-то вроде:
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
В конфигурацию proxy через мой конфигурационный файл 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, настроенная с помощью сессий stick и следующих портов:
Кстати, я видел 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
Любая помощь оценивается?