nginx反向代理的ip设置

勇康博客网
预计阅读时长 9 分钟
位置: 首页 服务器 正文

nginx反向代理后,php通过$_SERVER['REMOTE_ADDR']获取ip时,获取到的ip都是nginx的ip 127.0.0.1 。这时需要nginx去获取客户端的ip地址,并设置到反向代理头中,供php获取使用。

一、之前nginx配置

server{
        listen      80;
        charset     utf-8;
        
        location = /test{
            proxy_pass http://127.0.0.1:8080/index.php;
        }        
}

二、设置反向代理头ip信息后的nginx配置

server{
        listen      80;
        charset     utf-8;
        
        location = /test{
            proxy_pass http://127.0.0.1:8080/index.php;
            proxy_set_header    X-Real-IP        $remote_addr;
            proxy_set_header    X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header    HTTP_X_FORWARDED_FOR $remote_addr;
        }        
}

在反向代理中增加

            proxy_set_header    X-Real-IP        $remote_addr;
            proxy_set_header    X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header    HTTP_X_FORWARDED_FOR $remote_addr;

代码后,就能获取到客户端真实ip。


本文来自投稿,不代表本站立场,如若转载,请注明出处:
-- 展开阅读全文 --
头像
centos7安装docker
« 上一篇 2021-08-11
linux查找进程名所在目录
下一篇 » 2021-08-11
取消
微信二维码
微信二维码
支付宝二维码

发表评论

暂无评论,3179人围观

作者信息

勇康博客网
承接企业、个人,仿站、定制。域名,主机一键代发
TA的最新作品

热门文章

2
3

动态快讯

标签列表

目录[+]