获取网页的访问来源及其应用
来源:互联网 发布:微信玩牛牛作弊软件 编辑:程序博客网 时间:2024/04/30 21:25
在网易博客里看到有页面的访问来源,可以看到是从那个链接点进来的。其实获取网页的访问来源也不复杂,主要是获取http头的Referer变量。首先看一个asp例子:
建立文件a.asp:
<%
Dim from
from = Request.ServerVariables("HTTP_REFERER")
Response.write "访问来源是:" & from
%>
<script language="javascript">
var from = document.referrer;
if (from != '') alert("访问来源是:" + from);
</script>
<br/>
11111111111
Dim from
from = Request.ServerVariables("HTTP_REFERER")
Response.write "访问来源是:" & from
%>
<script language="javascript">
var from = document.referrer;
if (from != '') alert("访问来源是:" + from);
</script>
<br/>
11111111111
在浏览器输入http://localhost/a.asp(根据实际修改访问路径),看到效果如下:
访问来源是:
11111111111
11111111111
会看到并没有获取到访问来源。然后建立一个b.asp文件:
<a href="a.asp">dfd</a>
在浏览器输入http://localhost/b.asp(根据实际修改访问路径),点击超链接,看到效果如下:
访问来源是:http://localhost/b.asp
11111111111
11111111111
这就说明获取到了网页的访问来源。从以上步骤看出,直接在浏览器地址栏输入url是没有访问来源的,从页面的超链接等地方打开的页面就可以获取访问来源的url。上面给出了在js里用document.referrer得到访问来源,在asp里用Request.ServerVariables("HTTP_REFERER")获得访问来源。其实在jsp里也是类似的,用request.getHeader("Referer")。
获取网页的访问来源又有什么用途呢?一是可以跟踪记录从哪些网站、网页上访问了自己的站点或者页面;二是可以记住刚才访问的页面,可以跳转回去;还有一个很重要的用途,就是防盗链。一些网站的资源如图片、视频等,可能被链到其它网站上,或者黑客频繁的访问某些资源,把网站搞瘫痪,于是一些网站用了防盗链技术。一种简单的防盗链方法就是获取访问的url,比对是否是自己的url或者经授权的url,不符合条件的就不让访问,或者显示一些提示信息。
道高一尺,魔高一丈。访问的url是很容易被伪造的,我们再做一个c.asp:
<%
Dim http
set http = server.createobject("Microsoft.XMLHTTP")
http.open "GET","http://localhost/a.asp",false
http.setRequestHeader "Referer","http://www.baidu.com/"
http.send()
Response.write http.Responsetext
%>
Dim http
set http = server.createobject("Microsoft.XMLHTTP")
http.open "GET","http://localhost/a.asp",false
http.setRequestHeader "Referer","http://www.baidu.com/"
http.send()
Response.write http.Responsetext
%>
然后在浏览器输入http://localhost/c.asp(根据实际修改访问路径),页面上看到如下内容:
访问来源是:http://www.baidu.com/
11111111111
11111111111
可以看到Referer很容易的被伪造成一个任意输入的字符串。说了半天,HTTP_REFERER还是防君子不防小人,呵呵。
- 获取网页的访问来源及其应用
- js和jsp获取网页的访问来源及其应用
- js和jsp获取网页的访问来源及其应用
- 获取当前访问url的来源地址
- JS获取访问来源
- Java获取来源网页的地址和ip
- JAVA中获取访问来源
- 应用市场的来源
- 实现一个简单的网页(缩略词表、文献来源链接、快速访问键列表)
- 通过WebView获取访问网页的源代码
- curl 获取访问网页的状态吗
- android获取应用信息,判断应用来源,监听应用的安装和卸载
- 做web网页项目中如何获取跳转的来源url和当前url.
- 获取来源页面的页面
- linux 获取经过N层Nginx转发的访问来源真实IP
- linux 获取经过N层Nginx转发的访问来源真实IP
- 各种编程语言的来源及其特点
- 网页设计的11个灵感来源
- typedef的平台无关性
- ICP自主备案操作说明
- Web2.0中Ajax应用的详解
- 蓝蓝的天,白白的云(图)
- AJAX案例研究之google suggest
- 获取网页的访问来源及其应用
- RAD 2009 ISO 2009.06.12
- 掌握 Ajax,第 1 部分: Ajax 入门简介
- 摇滚年代(图)
- CSS学习精品网站推荐
- Struts2、Hibernate、Spring整合的泛型DAO,以及通用的分页技术
- 套接字之重叠I/O模型
- CSS制作网页编写的提醒及小技巧整理
- Delphi2009中容器类