服务器使用nginx做代理,通过HttpServletRequest获取请求用户真实IP地址
Posted 辉﹏
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了服务器使用nginx做代理,通过HttpServletRequest获取请求用户真实IP地址相关的知识,希望对你有一定的参考价值。
首先,在nginx配置中添加如下配置
server { listen 80; server_name www.wenki.info; #要访问的域名 charset utf8; location / { proxy_pass http://wenki_info; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
使用如下命令重新加载配置
nginx -s reload
服务端获取ip地址代码
public static String realIP(HttpServletRequest request) { String xff = request.getHeader("x-forwarded-for"); if (xff != null) { int index = xff.indexOf(‘,‘); if (index != -1) { xff = xff.substring(0, index); } return xff.trim(); } return request.getRemoteAddr(); }
以上是关于服务器使用nginx做代理,通过HttpServletRequest获取请求用户真实IP地址的主要内容,如果未能解决你的问题,请参考以下文章