关闭

JavaWeb程序获取客户端IP

2800人阅读 评论(0) 收藏 举报
分类:
在JavaWeb中很多时候需要获取客户端IP地址,但是有写人直接就用
request.getRemoteAddr();
获取,但是这种方式获取IP有缺陷,当前端使用的是Nginx等代理的话,获取的IP地址就是127.0.0.1,所以在获取IP时候需要对Nginx等做处理,下面是完整的程序:
package com.utils;

import javax.servlet.http.HttpServletRequest;

public class GetIP {
	/**
	*Auther:呐喊
	*Function:获取客户端IP地址,针对Nginx等反代作处理
	*Date:2016-11-01
	*URL:http://www.htcdc.com
	*/
	public String getIP(HttpServletRequest request){
		String ip=request.getHeader("x-forwarded-for");
		if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
			ip=request.getHeader("Proxy-Client-IP");
		}
		if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
			ip=request.getHeader("WL-Proxy-Client-IP");
		}
		if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
			ip=request.getHeader("X-Real-IP");
		}
		if(ip==null || ip.length()==0 || "unknown".equalsIgnoreCase(ip)){
			ip=request.getRemoteAddr();
		}
		return ip;
	}
	
	
}


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Java获取客户端IP

转载地址:Java获取客户端IP 在开发工作中,我们常常需要获取客户端的IP。一般获取客户端的IP地址的方法是:request.getRemoteAddr();但是在通过了Apache,Squid等...
  • u010648555
  • u010648555
  • 2016-06-15 14:19
  • 950

Java 通过HttpRequest获取请求用户真实IP地址

在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid,nginx等反向代理软件就不能获取到客...
  • xiaokui_wingfly
  • xiaokui_wingfly
  • 2015-05-21 10:59
  • 26419

Java Web开发之httpServletRequest获取客户端真实ip

坚持 成长 每日一篇request方法客户端IP: request.getRemoteAddr() 输出:192.168.0.106客户端主机名:request.getRemoteHost()输出:a...
  • u014410695
  • u014410695
  • 2015-12-03 16:12
  • 3574

java web获取ip,并获取ip所在的地址

获取IP地址:private String getIp(HttpServletRequest request) { String ip = request.getHeader("x-f...
  • u011256859
  • u011256859
  • 2016-08-10 15:03
  • 2682

java中获取服务器的IP和端口

前几天写过一个获取远程服务器的IP和端口的程序,从网上查了一些资料顺便加一些自己的理解,希望对大家有所帮助: struts2 获取request HttpServletRequest re...
  • u012987387
  • u012987387
  • 2013-12-26 11:21
  • 32854

Java获取用户ip

Java 如何获取客户端IP呢? 下面是我总结的几种方法:/** * 获取客户端ip地址(可以穿透代理) * * @param request * @ret...
  • hw1287789687
  • hw1287789687
  • 2015-05-31 21:31
  • 7304

Java获取请求客户端的真实IP地址

整理网友的材料,最后有源码,亲测能解决所有java获取IP真实地址的问题 整理的这里: 1、链接1  2、链接2 JSP里,获取客户端的IP地址的方法是: request.g...
  • jinwufeiyang
  • jinwufeiyang
  • 2016-08-03 12:26
  • 19328

用Java来获取访问者真实的IP地址

在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实I...
  • libaolin198706231987
  • libaolin198706231987
  • 2016-06-07 14:36
  • 14891

Java获取客户端真实IP地址的两种方法

获取IP地址
  • yyywyr
  • yyywyr
  • 2016-12-24 13:50
  • 4203

webservice获取客户端IP地址

目录: 基于JDK6 jax-ws开发的webservice获取客户端IP地址 Endpoint.publish() 轻量级HTTP服务发布 在web容器tomcat下发布 ...
  • z69183787
  • z69183787
  • 2015-07-14 21:49
  • 9248
    个人资料
    • 访问:74043次
    • 积分:917
    • 等级:
    • 排名:千里之外
    • 原创:24篇
    • 转载:3篇
    • 译文:0篇
    • 评论:8条
    文章分类
    最新评论