nginx设置反向代理,获取真实客户端ip

如何获取nginx反向代理后的真实客户端IP地址,具体的nginx配置如下:

upstream这个模块提供一个简单方法来实现在轮询和客户端IP之间的后端服务器负荷平衡
upstream abc.com {
        server 127.0.0.1:8080;
        server 127.0.0.1:80;
        server 127.0.0.1:8000;
}
 
server {
        listen 80;
        server_name www.test.com;
        location / {
                proxy_pass http://abc.com;
                proxy_set_header    Host             $host;#保留代理之前的host
                proxy_set_header    X-Real-IP        $remote_addr;#保留代理之前的真实客户端ip
                proxy_set_header    X-Forwarded-For  $proxy_add_x_forwarded_for;
                proxy_set_header    HTTP_X_FORWARDED_FOR $remote_addr;#在多级代理的情况下,记录每次代理之前的客户端真实ip
                proxy_redirect      default;#指定修改被代理服务器返回的响应头中的location头域跟refresh头域数值
        }
}
posted @ 2022-04-22 18:34  liuhuayiye  阅读(296)  评论(0编辑  收藏  举报