免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: zhangyuankui
打印 上一主题 下一主题

[proxy] 大虾帮帮忙!! [复制链接]

论坛徽章:
0
11 [报告]
发表于 2004-05-20 14:37 |只看该作者

大虾帮帮忙!!

会不会是本地执行的脚本如 java/vb/j script 给出的IP地址呢?

论坛徽章:
0
12 [报告]
发表于 2004-05-20 15:41 |只看该作者

大虾帮帮忙!!

等我有机会的时候,研究一下ASP,再给你回答。

论坛徽章:
0
13 [报告]
发表于 2004-05-20 17:18 |只看该作者

大虾帮帮忙!!

先谢谢了!!

论坛徽章:
0
14 [报告]
发表于 2004-05-20 17:30 |只看该作者

大虾帮帮忙!!

找到答案了:

在 index.asp中有

        Dim userip,userip2
        userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR"
        userip2 = Request.ServerVariables("REMOTE_ADDR"
        if userip = ""  then
                response.write "您的真实IP 是:"&userip2&","
        else
                response.write "您的真实IP 是:"&userip&","
        end if

而获限代理后的IP应该为:
ASP如何获取真实IP地址
2003:7:10 ·来源:99软件站 karry  




在 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 的值。

论坛徽章:
0
15 [报告]
发表于 2004-05-20 18:37 |只看该作者

大虾帮帮忙!!

明白了,再次感谢szkingrose的解答!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP