java开发_获取访问者IP
来源:互联网 发布:什么是炒黄金知乎 编辑:程序博客网 时间:2024/05/17 07:54
这是在一个opensource项目中看到的获取访问者ip的方法:
/**
* 获取访问者IP
*
* 在一般情况下使用Request.getRemoteAddr()即可,但是经过nginx等反向代理软件后,这个方法会失效。
*
* 本方法先从Header中获取X-Real-IP,如果不存在再从X-Forwarded-For获得第一个IP(用,分割),
* 如果还不存在则调用Request .getRemoteAddr()。
*
* @param request
* @return11
*/
public static String getIpAddr(HttpServletRequest request) {
String ip = request.getHeader("X-Real-IP");
if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) {
return ip;
}
ip = request.getHeader("X-Forwarded-For");
if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip))
{
// 多次反向代理后会有多个IP值,第一个为真实IP。
int index = ip.indexOf(',');
if (index != -1) {
return ip.substring(0, index);
} else {
return ip;
}
} else {
return request.getRemoteAddr();
}
}
- java开发_获取访问者IP
- java获取访问者的IP
- Java获取访问者的ip地址
- java获取访问者的IP和端口
- java获取访问者主机名和IP地址
- python获取访问者ip
- PHP获取访问者IP
- php获取访问者ip
- PHP获取访问者IP
- PHP获取访问者IP
- 获取访问者IP
- PHP获取访问者IP
- Java_util_获取访问者 IP
- 获取访问者IP
- java 获得访问者ip
- 用Java来获取访问者真实的IP地址
- 用Java来获取访问者真实的IP地址
- 用Java来获取访问者真实的IP地址
- T-SQL象数组一样处理字符串、分割字符串
- Android ImageView 的 scaleType属性作用
- ContentService简单浅析
- servlet,filter, listener, interceptor 区别与联系
- Android_模拟时钟内时针、分针触摸转动
- java开发_获取访问者IP
- android layout_gravity失效的问题
- Java中的Map List Set等集合类
- PHP设计模式——责任链模式
- Linux设备驱动中得 DTS文件加载过程
- hibernate 映射文件配置默认值方法
- android 内存溢出问题分析
- java.lang.System下的arraycopy和java.util.Arrays.copyOf方法
- url中的参数带有&连接符号处理