В настоящее время у меня работает экземпляр Elastic Beanstalk без балансировки нагрузки, в будущем я буду использовать Elastic Load Balancer.
Мой экземпляр EB находится за прокси-сервером nginx, я знаю, что для решения этой проблемы я могу отключить прокси-сервер nginx, но это повлияет на меня, поскольку я масштабирую приложение в будущем.
Я прочитал статью в Интернете, в которой говорилось, что если я добавлю папку .ebextensions в свое приложение, я смогу добавить файл, чтобы веб-сокеты могли отвечать через прокси, но мне не повезло.
Когда я проверяю свои журналы EB, я вижу, что входящий запрос сокета получен, но ничего не отправляется обратно подключающемуся клиенту.
У меня есть файл 01_files.config в моей папке .ebextensions (которая находится в корне моего приложения.
Его содержание:
files:
"/etc/nginx/conf.d/websocketupgrade.conf" :
mode: "000755"
owner: root
group: root
content: |
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
Как я могу заставить веб-сокеты работать через мой экземпляр EB без отключения прокси-сервера nginx?