[英]Socket Io in AWS ElasticBeanStalk Node
我在Elastic Bean stalk中有一個Node js應用程序。我們正在考慮將Socket io用於功能。
我在某些地方讀到必須在AWS elasticbeanstalk中手動啟用套接字io支持。 特別是當它使用默認的NGINX代理時。
我讀到默認情況下,一個彈性beantalk實例的前面有一個nginx代理,該代理未配置為允許webSockets。
這是正確的信息嗎? 如果是這樣,如何在AWS EB中啟用套接字io支持?
這是正確的信息。 您需要為Elastic Beanstalk部署進行一些其他配置,以使WebSockets(Socket.io或其他方式)正常工作。
創建Elastic Beanstalk環境后,需要將負載均衡器配置為接受TCP連接,並將配置文件添加到節點項目的根目錄中:
配置負載均衡器:
添加配置文件:
.ebextensions
的文件夾。 在新的.ebextensions
文件夾中創建一個名為enable-websockets.config
文件,其內容如下:
container_commands:
enable_websockets:
command: |
sed -i '/\s*proxy_set_header\s*Connection/c \
proxy_set_header Upgrade $http_upgrade;\
proxy_set_header Connection "upgrade";\
proxy_pass_request_headers on;\
' /tmp/deployment/config/#etc#nginx#conf.d#00_elastic_beanstalk_proxy.conf
該文件告訴NGINX反向代理如何處理WebSockets與應用服務器通信所需的HTTP 101
升級狀態代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.