0
Posted on 11:13:00 by Unknown and filed under
Web
总不能在标题上就写如何盗链吧...
Referer 是 HTTP Header 的一个字段(wiki),包含在向服务器发送的请求中,记录访客的来源URI。
很多网站用辨识 Referer 来防止盗链,比如百度、网易相册。以猫扑上的图片为例,如果我们直接访问,或者外链到其他网站,就会显示不出。因为猫扑的服务器判断 Referer 信息,发现不是来自自身网站,就对该请求予以拒绝。
如果网站的防盗链措施只是基于 Referer 判断,可以通过伪造 Referer 来实现外链。比如 Firefox 的 RefControl 扩展。但是依据安全性(The setRequestHeader() method),不能要求用户浏览器发送伪造的 Referer。
所以早期使用 JavaScript 利用 XMLHttpRequest 设置 Referer,早期的 Flash 通过 ActionScript 构造请求的时候,自定义 Referer 的方法现在都被禁止了。
既然不能强制客户端设置 Referer,那只能通过服务器中转的方式,因为在服务器端就可以构造自定义请求了。
对于网站管理者来说,防止盗链的方式就很多了,比如利用 Session,判断 IP,生成随机码等等方式...
发表评论