nginx 获取源IP

本文介绍了在nginx中如何通过ngx_http_proxy_module模块的proxy_set_header配置项来获取源IP。讲解了$host、X-Real-IP和X-Forwarded-For三个配置项的含义,以及在不同场景下如何获取真实的客户端IP。
摘要由CSDN通过智能技术生成

1. nginx 配置文件中获取源IP的配置项

 proxy_set_header        Host            $host;
 proxy_set_header        X-Real-IP       $remote_addr;  #一般的web服务器用这个 X-Real-IP 来获取源IP
 proxy_set_header        x-forwarded-for $proxy_add_x_forwarded_for;  #如果nginx 服务器是作为反向代理服务器的,则这个配置项是必须的;否则看不到源IP

2. nginx 代理服务器的模块

nginx 通过 ngx_http_proxy_module模块 实现反向代理;在nginx 启动服务load conf时,
 就会读取 proxy_set_header 的配置项;来获取需要的变量。proxy_set_header 是用来设置请求的header的;
 比如:设置上面的host  X-Real-IP x-forwarded-for 


3.   3个配置项的含义

  • host:只要 用户在浏览器中访问的域名绑定了 VIP VIP 下面有RS;则就用$host ;host是访问URL 中的域名和端口  www.taobao.com:80
  • X-real-IP:把源IP 【$remote_addr,建立HTTP连接header里面的信息】赋值给X-Real-IP;这样在代码中 $X-Real-IP
     来获取 源IP
  • x-forwarded-for: 在nginx 作为代理服务器时,设置的IP列表,会把经过的机器ip,代理机器ip都记录下来,
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值