当前位置: > Linux服务器 > nginx >

nginx反向代理中node节点获取真实IP的方法

时间:2014-07-09 20:38来源:linux.it.net.cn 作者:IT网
在nginx服务器中配置反向代理时,使node节点可以取到真实IP地址的办法。

本节内容:
在nginx的反向代理中node节点获取真实IP

前端为一个nginx 反向代理,结果:req.ip  
始终取到nginx的IP。

为了取得客户端真实IP,需要做2个步骤,如下:

1,设置nginx转发时加上http header

2,在node中取出新加的header
nginx配置
 

复制代码代码示例:
location /svc/ {  
      proxy_pass http://192.168.1.111:8080;  
      proxy_set_header Host $host;  
      proxy_set_header X-Real-IP $remote_addr;  
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
}  
 

以上增加了3个http header,其中X-Real-IP代表真实IP。

node节点的代码:
 

复制代码代码示例:
var real_ip = req.get("X-Real-IP") || req.get("X-Forwarded-For") || req.ip; 
(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容