ASP如何获取真实IP地址

转载 2006年06月13日 20:31:00
大家都知道,在ASP中可以使用Request.ServerVariables("REMOTE_ADDR")来取得客户端的IP地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的IP地址,而不是真正的客户端IP地址。要想透过代理服务器取得客户端的真实IP地址,就要使用Request.ServerVariables("HTTP_X_FORWARDED_FOR")来读取。

  不过要注意的是,并不是每个代理服务器都能用Request.ServerVariables("HTTP_X_FORWARDED_FOR")来读取客户端的真实 IP,有些用此方法读取到的仍然是代理服务器的 IP。

  还有一点需要注意的是:如果客户端没有通过代理服务器来访问,那么用Request.ServerVariables ("HTTP_X_FORWARDED_FOR")取到的值将是空的。因此,如果要在程序中使用此方法,可以这样处理:

  ......
  userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
  If userip = "" Then userip = Request.ServerVariables("REMOTE_ADDR")
  ......

  即:如果客户端通过代理服务器,则取HTTP_X_FORWARDED_FOR的值,如果没通过代理服务器,就取 REMOTE_ADDR的值。

来源:http://www.dwww.cn/new/2006516185481921.html

相关文章推荐

asp.net 取真实IP地址

目前网上流行的所谓"取真实IP地址"的方法,都有bug,没有考虑到多层透明代理的情况。  多数代码类似:  string IpAddress = (HttpContext.Current.Re...
  • hyhyct
  • hyhyct
  • 2013年05月02日 17:03
  • 632

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

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

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

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

多级代理下Nginx获取真实用户IP地址的总结

声明:本文参考http://www.ttlsa.com/nginx/nginx-get-user-real-ip/并做了一些补充讲解,希望会更加清晰明了~ 随着nginx的迅速崛起,...

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

用Java来获取访问者真实的IP地址  在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid...

Jsp获取用户真实IP地址

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

request.getRemoteAddr()如何获取用户真实的IP地址

‍要获得用户真实的IP地址需要借助请求报头中的x-forwarded-for变量。 request.getHeader("x-forwarded-for"); 完整实例如下 ...

php获取客户端真实ip地址的三种方法

php获取用户(客户端)真实IP地址的两种方法 第一种方法,还算靠谱,本人以前一直用的是这个方法:function get_real_ip(){ $ip=false; if(!em...

PHP如何获取客户端真实IP地址?

在PHP获取客户端IP中常使用 $_SERVER["REMOTE_ADDR"] 。但如果客户端是使用代理服务器来访问,那取到的是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。要想透过代理...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP如何获取真实IP地址
举报原因:
原因补充:

(最多只允许输入30个字)