• 注册
热门标签
↑ 收起导航

Request.ServerVariables(HTTP_REFERER)的工作方式的实验

今天做了个远程图片上传及防盗链的东西,用到了Request.ServerVariables(HTTP_REFERER)和Request.ServerVariables(SERVER_NAME),但对它的具体工作方式还不太了解,今天结合网上的说明,写下我自己的使用感受,记录下来也方便有用得上的朋友。

Request.ServerVariables(HTTP_REFERER) 用以获取访问本页面的上一页面,故存在以下两种情况:

能正常取得Request.ServerVariables("HTTP_REFERER")的情况

  1.直接用<a href> 

  2.用Submit或<input type=image>提交的表单(POST or GET) 

  3.使用Jscript提交的表单(POST or GET)

不能正常取得Request.ServerVariables("HTTP_REFERER")的情况:

  1.从收藏夹链接

  2.单击主页或者自定义的地址

  3.利用jscript的location.href or location.replace()

  4.在浏览器直接输入地址

  5.<%response.redirect%>

  6.<%response.addheader%>或<meta http-equiv=refresh>转向

  7.用xml加载地址

相信大家都能明白上面的意思,下面我要做的测试是为了能让没有写过代码的朋友实际观察它们在程序中具体返回的值。首先我新建个文件:test1.asp (名称随意),程序代码我就选择以上述“直接用<a href>”的情况,

代码为:<a href="http://yangjunwei.com/test2.asp"> 点我 </a>

然后再新建个文件 test2.asp,为了获取返回值,我们把它write出来:

<%

url1 = Request.ServerVariables("HTTP_REFERER")

response.write url1

url2 = Request.ServerVariables("SERVER_NAME")

response.write "<br /><br />"&url2

%>

最后我们运行 http://localhost:1000/test1.asp  点击链接并在 http://yangjunwei.com/test2.asp  中得到以下返回值:

http://localhost:1000/test1.asp

yangjunwei.com

实验结束了,如有其它疑问或讨论有关防盗链的方法,请回复交流!

版权声明:转载请注明来自杨俊伟博客,本文地址:http://yangjunwei.com/a/398.html
除非注明,杨俊伟博客文章均为原创,转载请注明出处和链接!
 

4 条评论 »

  • 笨笨
    2010/03/04 11:28:14

    嘿嘿学习了,要认真再看两遍才行。。

    nuodou 于 2010-3-4 11:41:14 回复

    哈哈 你太谦虚了

  • daniel
    2010/03/02 10:14:01

    呵呵,不错,ASP我还是会一些的。

    nuodou 于 2010-3-3 17:05:02 回复

    看出来了哈哈

  • 土狼妹妹
    2010/03/02 03:05:28

    学习了,对“盗链”还不是太了解,学习了

    nuodou 于 2010-3-3 17:06:02 回复

    等你用上了就知道了

  • Firm
    2010/03/01 19:56:42

    我也很烦盗链的,流量流失很严重

    路人甲 于 2010-3-5 19:04:36 回复

    asdfsadfasdf

发表评论 



我还是想用邮箱注册

登录

忘记密码 ?

用第三方帐号快捷登录

已有账户?前往登录吧~

注册