| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -34,6 +34,7 @@ public class IpUtils { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							String ip = null; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							try { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								ip = request.getHeader("x-forwarded-for"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								logger.warn("x-forwarded-for:"+ip); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									ip = request.getHeader("Proxy-Client-IP"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -46,9 +47,18 @@ public class IpUtils { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									ip = request.getHeader("HTTP_X_FORWARDED_FOR"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									ip = request.getHeader("X-Real-IP"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if (StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									ip = request.getRemoteAddr(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								//对于通过多个代理的情况,第一个IP为客户端真实IP,多个IP按照','分割
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if (ip != null && ip.length() > 15) { //"***.***.***.***".length() = 15
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									if (ip.indexOf(",") > 0) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										ip = ip.substring(0, ip.indexOf(",")); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} catch (Exception e) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								logger.error("IpUtils ERROR ", e); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -58,6 +68,7 @@ public class IpUtils { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						/** | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 * desc:获取本地Ip | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 * | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 * @return | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						public static String getServerIp() { | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |