获取用户IP地址,防钓鱼

摘要:
为了防止网站钓鱼,我们需要对用户的IP地址进行分析处理,可是用户也有可能通过代理方式进行操作,那么该如何获取到用户的IP地址呢?

为了防止网站钓鱼,我们需要对用户的IP地址进行分析处理,可是用户也有可能通过代理方式进行操作,那么该如何获取到用户的IP地址呢?

摘自网络上的代码:

1 public staticString getClientIP(HttpServletRequest httpservletrequest) {
2    if (httpservletrequest == null)
3       return null;
4    String s = httpservletrequest.getHeader("X-Forwarded-For");
5    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
6       s = httpservletrequest.getHeader("Proxy-Client-IP");
7    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
8       s = httpservletrequest.getHeader("WL-Proxy-Client-IP");
9    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
10       s = httpservletrequest.getHeader("HTTP_CLIENT_IP");
11    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
12       s = httpservletrequest.getHeader("HTTP_X_FORWARDED_FOR");
13    if (s == null || s.length() == 0 || "unknown".equalsIgnoreCase(s))
14       s =httpservletrequest.getRemoteAddr();
15    if ("127.0.0.1".equals(s) || "0:0:0:0:0:0:0:1".equals(s))
16       try{
17          s =InetAddress.getLocalHost().getHostAddress();
18 }catch(UnknownHostException uhe) {
19 uhe.printStackTrace();
20 }
21 returns; 22 }

免责声明:文章转载自《获取用户IP地址,防钓鱼》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇magento常用插件Makefile学习笔记之shell命令调用及目录处理下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

[转贴]彻底解决 CrystalReports 登录失败问题。

目录:一、Crystal Reports 9 最新补丁下载(搜集:海波.NET)二、原因1:文件夹 NTFS 权限的问题。三、原因2:PULL 模式,水晶报表中的数据库登录问题(非 Windows 集成身份验证)。四、原因3:PUSH 模式设置了 TableLogOnInfo,不需要!五、出错:部署到其它计算机,产生问题:连接失败。错误的登录参数。六、安全...

微信小程序高级基础

微信小程序高级基础 微信小程序的注册和服务器配置: 小程序是什么呢?小程序是一种不需要下载安装就可以使用的应用,它实现了应用"触手可及"的梦想,用户扫一扫或者搜一下就可以打开应用,也体现了龙哥"用完即走"的理念,用户不用关心是否安装太多应用的问题,应用将无处不在,随时可用,而且又不用安装卸载。 微信小程序其实是微信提高了自身对于HTML5特性支持的能力,...

原生JDBC

JDBCJava DataBase Connectivity,java数据库连接,是一种用于执行SQL语句的Java API。JDBC是Java访问数据库的标准规范,可以为不同的关系型数据库提供统一访问,它由一组用Java语言编写的接口和类组成。 驱动JDBC需要连接驱动,驱动是两个设备要进行通信,满足一定通信数据格式,数据格式由设备提供商规定,设备提供商...

第三方授权认证(一)实现第三方授权登录、分享以及获取用户资料

转载请注明出处:http://blog.csdn.net/yangyu20121224/article/details/9057257             由于公司项目的需要,要实现在项目中使用第三方授权登录以及分享文字和图片等这样的效果,几经波折,查阅了一番资料,做了一个Demo。实现起来的效果还是不错的,不敢独享,决定写一个总结的教程,供大家互相交...

java 获取用户的ip都是 127.0.0.1

通过nginx反向代理,java获取ip地址时,总是127.0.0.1。是因为nginx请求的时候没有带有request信息,设置nginx转发的时候,带上request的信息就可以了。java代码: /** * 先从反向代理里找IP * * @param request * @return */...

Android之 MTP框架和流程分析

概要 本文的目的是介绍Android系统中MTP的一些相关知识。主要的内容包括:第1部分 MTP简介对Mtp协议进行简单的介绍。第2部分 MTP框架介绍Android系统下MTP的框架。第3部分 MTP启动流程详细分析MTP服务的启动流程,包括Java层, JNI层, kernel相关知识的介绍。第4部分 MTP协议之I->R流程以"PC中打开一个M...