日期:2014-05-20  浏览次数:20703 次

获得远程ip
我自己写了一个小小网站,现在有跟我同一个机房的同事访问这个网站,但我这边获得的他的ip一直是127.0.0.1。代码如下:
String ipString = request.getHeader("x-forwarded-for");
if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {
ipString = request.getHeader("Proxy-Client-IP");
}
if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {
ipString = request.getHeader("WL-Proxy-Client-IP");
}
if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {
ipString = request.getRemoteAddr();
}

// 多个路由时,取第一个非unknown的ip
final String[] arr = ipString.split(",");
for (final String str : arr) {
if (!"unknown".equalsIgnoreCase(str)) {
ipString = str;
break;
}
}

请各位大侠看看到底哪里出了问题,这个是神马情况,谢谢哈!

------解决方案--------------------
用代理了?
------解决方案--------------------
判断代理的代码看着没有什么问题
你DEBUG跟跟