ASP获取真正的IP地址 兼容代理服务器


来源:高中英语教学交流网
发布时间:2014-02-09 23:00:00
查看次数:

内容提要:但还有一少部分情况,虽然获取了IP,但其实不是用户真正的IP,那就 是客户端使用了代码服务器,那么有什么办法来得到真正的用户IP呢

在ASP编程中,通常情况下,我们都是使用 Request.ServerVariables("REMOTE_ADDR") 来取得客户端的IP地址,的确,这种方法简便,也可得到大部分情况下的客户端IP,但还有一少部分情况,虽然获取了IP,但其实不是用户真正的IP,那就 是客户端使用了代码服务器,那么有什么办法来得到真正的用户IP呢?答案是使用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 。不过并不是所有使用代理服务器的情况都能用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 来读取真实IP,如果客户端没有通过代理来访问,那么用 Request.ServerVariables ("HTTP_X_FORWARDED_FOR") 获取的值将是空的。因此,要获取客户端真正IP,我们可以这样编写ASP代码:
userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If userip = "" Then userip = Request.ServerVariables("REMOTE_ADDR")

翻译一下上边的代码:先假设用户使用了ip,那么就是:如果 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 没有获取到IP,也就是用户没有使用代理,那么就使用Request.ServerVariables("REMOTE_ADDR") 来取得客户端IP,这样就既准确又能保证获取到的IP地址不为空。


相关文章
·如何解决WORD安全模式错误问题09-19
·excel怎么生成随机数?02-03
·EXCEL 成绩统计常用函数04-16
·出于安全原因,Firefox 取消了该请求03-22
·SQL SERVER数据库中快速找主表11-10
·如何输入100以内的带圈字符?07-20
·如何一次性同时打开多个Excel工作簿10-30
·解决gmail不稳定的方法03-17
·Access中批量替换数据库内容的三种方法09-20
·Word轻松排版四步曲 08-30
最新文章
阅读排行