amazon-web-services – 如何使用服务器上的TCP和Nginx获取AWS ELB的客户端请求的端口号
作者:互联网
在使用HTTP / HTTPS作为负载均衡器协议时,我们从x-forwarded-protocol标头获得所请求的源协议(即,它是HTTP或HTTPS).
现在,在nginx配置中使用此标头,可以确定始发呼叫是来自HTTP还是HTTPS,并且可以相应地执行动作.
但是如果ELB侦听器配置如下图所示,那么如何确定请求是通过端口80还是端口443来实现的?
解决方法:
你有几个选择,至少:
选项1不是将两种类型的流量都发送到实例上的同一端口.而是将应用程序配置为侦听其他端口,例如81或8080,并在那里发送源自SSL的流量.然后使用流量到达实例的端口来区分这两种类型的流量.
选项2是在修改应用程序以理解它之后在ELB上启用PROXY协议.这样做的好处是还可以为您提供客户端IP地址.
http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/enable-proxy-protocol.html
http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt
标签:nginx,amazon-web-services,amazon-elb 来源: https://codeday.me/bug/20190628/1319935.html