温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

nginx作为反向代理,后端tomcat服务器获取真实客户端IP

发布时间:2020-07-08 05:39:41 来源:网络 阅读:871 作者:TangYGao 栏目:系统运维

如果要记录真实的客户端访问地址,需要进行如下配置:

1、反向代理服务器nginx.conf配置
在server后面增加三个参数用与记录IP:
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

案例:
server {
listen 80;
server_name 10.10.32.29;

upstream tomcat {    
        ip_hash; 
    server 10.10.32.29:8080   max_fails=1 fail_timeout=10s weight=1;
    server 10.10.32.30:8080   max_fails=1 fail_timeout=10s weight=1;    
}           

    location / {

proxy_pass http://tomcat;
proxy_redirect default;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; #保留代理之前的真实客户端ip
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #记录代理过程
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}

}

2、修改tomcat的配置文件

在server.xml中修改

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%{X-FORWARDED-FOR}i %h %l %u %t "%r" %s %b" />

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI