tapestry4获取客户端IP问题

wobu20 2008-05-10
请问一个T4获取客户端IP的问题,一下是获取IP的代码:

	/*
     * 获取IP地址
     */
    public abstract HttpServletRequest getServletRequest();   
    
	public String getIP(){
		
		String ip = this.getServletRequest().getRemoteAddr();
		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) 
		{ 
			ip = this.getServletRequest().getHeader("Proxy-Client-IP");
		} 
		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) 
		{
			ip = this.getServletRequest().getHeader("WL-Proxy-Client-IP");
		}
		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) 
		{ 
			ip = this.getServletRequest().getHeader("HTTP_CLIENT_IP");
		}
	//	System.out.println("用户IP为:"+ip);
		return ip;
	}



出现的问题是:项目在本地运行时,获取的是客户端的IP地址(我叫朋友登录本地服务器测试结果正确),可是放到服务器上面,获取的却是服务器端的IP,服务器重启了很多次,项目也全部替换掉,可问题还是存在。

请问各位大哥,这个问题是怎么回事,是代码问题还是?

谢谢!
wobu20 2008-05-10
解决了...是代理服务器的问题。