三招两式 解决图片盗链无法查看问题
几乎所有的图片防盗链功能,都是通过判断referer来实现的。通常的规则是,如果referer是本网站的那几个域的url或者referer为空时,则图片正常输出,否则给出一个出错图片。
知道原理了,问题就好解决了--就是伪造一个referer。例如请求一个网易相册图片的时候,总是伪装发送网易相册的referer,而不管实际的referer。
本文将介绍在Firefox,Opera,IE这三大浏览器中,遇到提示盗链的图片时,正常浏览该图片的方法。
(一)Firefox
Firefox下笔者发现了三种实现方法,本文选择其中两种介绍。
①改变设置法
在地址栏中输入"about:config",回车。然后在下面出现的过滤器一栏输入"network.http.sendRefererHeader",下面只剩了一条显示。
图1(点击浏览大图) |
双击该条首选项,出现的对话框内,将整数的值由2改为0。刷新后就能看到图片。
图2 |
介绍一下首选项各个整数值所代表的含义:
0--从不发送referer信息;
1--当点击超链接时发送referer信息;
2--当点击超链接或加载图片时发送referer信息。(默认值)
如果你采用第一种方法,由于所有发送referrer信息都会被组织,可能会造成一些网站不能正常使用,例如电子邮件站点,图片上传站点以及安全站点等。如果你采用这种方法,你必须不断地更改设置。因为有更为灵活,定制性更高的第二种方法,所以笔者介绍第一种方法让大家学习,并不推荐使用。
②安装扩展法
Firefox扩展RefControl能够实现浏览盗链图片,针对每个防止盗链的网站需要单独添加地址,但是它的好处就是,一次设置,永绝后患,不用像第一种方法那样再改来改去了。RefControl目前已经可以用正体中文显示,相信简体中文也会很快出现。
RefControl的安装页面:https://addons.mozilla.org/en-US/firefox/addon/953
安装扩展,重启Firefox后,打开"工具--RefControl选项",或者双击右下角工具栏图标。
图3 |
弹出对话框后,点击"新增网站",弹出"RefControl网站属性"对话框。从下图可以了解到有"一般","封锁","伪装"和"自订"四种动作,及其含义。例如,盗链的图片来自网易相册,就在"网站"一栏中输入其地址"photo.163.com",并将动作设置为"伪装"。
图4 |
确定保存后,刷新网页,图片立现!