我一直在搜索如何配置nginx代理服务器以使用websockets的解决方案。我已经准备好找到一堆解决方案。但是,这些脚本在实例中修补了nginx.conf。但我的实例并没有运行nginx。 Nginx在平衡器上运行。
所以我的问题是如何在平衡器上修补nginx配置。
答案 0 :(得分:2)
您的问题令人困惑,因为您说您正在使用ELB 和您想要Nginx。但是你不能使用正常的ELB在Nginx中获得websockets,除非在特定情况下,否则你可能不需要使用ELB的Nginx。
您有两种选择:
1)继续使用ELB和Elasticbeanstalk。问题是ELB根本不支持websockets。见this article。您需要停止使用ELB作为HTTP代理,并开始将其用作TCP代理。缺点是您的应用程序现在将暴露给您的服务器上下。 (在HTTP代理中,每个请求都可以转到不同的服务器。在TCP代理中,请求在整个会话期间保持活动状态,因此当服务器出现故障时,您的客户端必须处理它。&#39 ;)
2)运行您自己的负载均衡器。最佳实践是EIP + Nginx + HAProxy。这是一个完全不同的问题。