加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

配置nginx以记录原始请求者IP(而不是转发代理的IP)

发布时间:2020-12-13 21:10:54 所属栏目:Nginx 来源:网络整理
导读:在我维护的一个支持nginx的网站上,一些访问者支持某个转发代理.由于请求通过代理服务器,因此在这些情况下,HTTP请求IP地址始终来自代理服务器而不是原始请求者. 但是,代理确保将原始请求者IP包含在名为X-IORG-FBS-UIP的单独HTTP头字段中.它也可以在X-FORWARDE

在我维护的一个支持nginx的网站上,一些访问者支持某个转发代理.由于请求通过代理服务器,因此在这些情况下,HTTP请求IP地址始终来自代理服务器而不是原始请求者.

但是,代理确保将原始请求者IP包含在名为X-IORG-FBS-UIP的单独HTTP头字段中.它也可以在X-FORWARDED-FOR中找到.

在nginx访问日志中,我注意到代理IP是为所有这些用户显示的,而不是真正的IP.如何配置nginx,使得原始请求者IP由nginx记录,而不是代理?一个说明性的例子会很棒;提前致谢!

附:我的nginx是v 1.4.6

最佳答案
这是使用set_real_ip_from基于自定义标头更新$remote_addr变量来完成的.例如,可以按如下方式创建/etc/nginx/conf.d/proxies_acl.conf,以便为1.2.3.0/22和23.22代理的请求基于X-IORG-FBS-UIP标头设置客户端IP变量. 20.0 / 22:

set_real_ip_from 1.2.3.0/22;
set_real_ip_from 23.22.20.0/22;
real_ip_header X-IORG-FBS-UIP;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读