欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

三招两式 解决图片盗链无法查看问题

程序员文章站 2022-05-28 18:28:58
几乎所有的图片防盗链功能,都是通过判断referer来实现的。通常的规则是,如果referer是本网站的那几个域的url或者referer为空时,则图片正常输出,否则给出一...
几乎所有的图片防盗链功能,都是通过判断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

    确定保存后,刷新网页,图片立现!