mic*_*elg 10 nginx logging reverse-proxy x-forwarded-for amazon-elb
我的环境有用户请求通过多个系统:
[客户端] --> [ELB] ---> [nginx] --> [网络]
(ELB = AWS 弹性负载均衡器)
多亏了这个答案,我让 nginx 确定并将正确的客户端 IP 地址传递给带有X-Forwarded-For
和X-Real_IP
标头的上游服务器(Web)。相关的 nginx 配置:
real_ip_header X-Forwarded-For;
set_real_ip_from 10.0.0.0/8;
real_ip_recursive on;
proxy_set_header X-Real-IP $remote_addr;
Run Code Online (Sandbox Code Playgroud)
我的问题是,nginx 中的 Real IP 模块用$remote_addr
其X-Forwarded-For
计算结果替换了现有变量。这为我提供了原始客户端 IP,但我丢失了实际将请求发送到代理(即 ELB)的系统的 IP 地址。
总的来说,拥有客户端 IP 对我来说更重要,但我希望能够记录完整的请求链,以便我可以了解(和调试)流量是如何流动的。目前,我只能让 nginx 记录客户端 IP、它自己的 IP 和上游服务器 IP。我也希望能够记录 ELB IP。
归档时间: |
|
查看次数: |
16643 次 |
最近记录: |