我在AWS ELB后面使用nginx。当我从服务器获得响应远程地址是ELB而不是服务器时,可以使用服务器IP而不是AWS ELB。
答案 0 :(得分:1)
不,你不能,如果你愿意与ELB的整个观点相矛盾,并将EC2实例暴露给外部流量。在这种情况下,ELB将无法平衡您实例上的负载并导致其崩溃。
如果您想直接访问实例IP,请不要使用ELB。
答案 1 :(得分:1)
当AWS ELB向nginx服务器发送请求时,它会向名为“X-Forwarded-For”的请求添加一个标头,其值为“the IP address of a client when you use an HTTP or HTTPS load balancer”
因此,您的nginx服务器配置应包含一行,例如:
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
允许nginx用于查看该标头的应用程序。
答案 2 :(得分:-1)
您可以更改Nginx的日志格式并添加X-forward,这将打印请求的elb和原始WAN ip