nginx获取客户端真实IP

1.目的:

获取客户端真实IP

2.场景(环境):

客户端 -> nginx服务 -> tomcat服务

3.结果:

只能获取到nginx服务IP

4.修改nginx.conf文件,获取客户端真实IP

location{}中添加以下代码:

            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;

添加后:

location / {
            proxy_pass http://localhost:8999/;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }

Java客户端获取

request.getHeader("X-Forwarded-For")

request.getHeader("X-Real-IP")

你可能感兴趣的:(Nginx)