nginx是一款优秀的http服务器、MX邮件服务器和反向代理服务器。
nginx代理转发tomcat ,在tomcat中如何获取被nginx所代理的客户端ip而不是nginx自身的ip呢?
nginx.conf 配置 :
location / { # 最重要的是下面这条配置 proxy_set_header X-Real-IP $remote_addr; proxy_set_header User-Agent $http_user_agent; proxy_set_header Host $host; proxy_set_header X-Forward-For $remote_addr; proxy_pass http://127.0.0.1:8090/ ; }
java web 中获取客户端真实ip
/** * 获取客户端ip * @param request * @return */ public static String getClientIp(HttpServletRequest request){ String header = request.getHeader("X-Real-IP"); if(StringUtils.isNoneBlank(header) && !header.equalsIgnoreCase("unkown")){ return header; } header = request.getHeader("X-Forwarded-For"); if (StringUtils.isNoneBlank(header) && !header.equalsIgnoreCase("unkown")){ return header; } header = request.getHeader("Proxy-Client-IP"); if (StringUtils.isNoneBlank(header) && !header.equalsIgnoreCase("unkown")){ return header; } header = request.getHeader("WL-Proxy-Client-IP"); if (StringUtils.isNoneBlank(header) && !header.equalsIgnoreCase("unkown")){ return header; } return request.getRemoteAddr(); }
上一篇:测试文章1
下一篇:rabbitMQ-3.6.1安装
Copyright © 叮叮声的奶酪 版权所有
备案号:鄂ICP备17018671号-1
不错不错哟。。。