Nginx获取反向代理真实IP和向下转发

一、Nginx前端的连接来自反向代理服务器,如果需要获取真实IP,可按此配置:

server {
    listen       80;
    server_name  host.domain.com;
    charset utf-8;
    set_real_ip_from  1.2.3.4;          //真实服务器上一级代理的IP地址或者IP段,可以写多行
    real_ip_header    X-Forwarded-For;  //告知Nginx真实客户端IP从哪个请求头获取
    real_ip_recursive off;              //是否递归解析,off表示默认从最后一个地址开始解析
    ...
    }

  

二、Nginx作为反向代理服务器,向下转发真实IP

location { 
    ... 
}
//下面三句起作用
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

更多详细的内容,请参看参考资料: 

1. https://www.cnblogs.com/mzhaox/p/11214747.html
2. https://my.oschina.net/yysue/blog/2221374

原文地址:https://www.cnblogs.com/yangjisen/p/12455933.html