- #开启重写引擎
- RewriteEngine on
- #图片防盗链
- RewriteCond %{HTTP_REFERER} !http://rewrite/.*
- RewriteRule .*\.(jpg|jpeg|png|gif) daotu.jpg
引子:明明引用了一个正确的图片地址,但显示出来的倒是一个红叉或写有“此图片仅限于***网站用户交流沟通使用”之类的“假图片”(下图即是网易博客的防盗链效果)。用嗅探软件找到了多媒体资源的真实地址用下载软件仍然不能下载。下载一些资源时老是出错,若是确认地址没错的话,大多数状况都是赶上防盗链系统了。常见的防盗链系统,通常使用在图片、音视频、软件等相关的资源上。
1、什么是防盗链系统
在确保地址正确的状况下,不能下载相应的资源,均是受到防盗链系统的影响,那么究竟什么是防盗链系统呢?防盗链天然就是防范盗链,因此这里先说一下什么是盗链。
盗链是指在本身的页面上展现一些并不在本身服务器上的内容。一般的作法是经过技术手段得到它人服务器上的资源地址,绕过别人的资源展现页面,直接在本身的页面上向最终用户提供此内容。比较常见的是一些小站盗用大站的资源(图片、音乐、视频、软件等),对于这些小站来讲,经过盗链的方法能够减轻本身服务器的负担,由于真实的空间和流量均是来自别人的服务器。
防盗链系统就是防范盗链的系统,防止别人经过一些技术手段绕过本站的资源展现页面,盗用本站的资源,让绕开本站资源展现页面的资源连接失效。实施防盗链系统后,由于屏蔽了那些盗链的间接资源请求,从而能够大大减轻服务器及带宽的压力,也正如此,愈来愈多的站点都开始实施防盗链技术。
2、窥视防盗链
如今你们应该知道了为何有真实地址仍然不能下载,这就是防盗链的做用。凡事必有因果,
为何能够防盗链呢,其实现原理是什么?防盗链又是如何实现的呢?
提到防盗链的实现原理就不得不从HTTP协议提及,在HTTP协议中,有一个表头字段叫referer,采用URL的格式来表示从哪儿连接到当前的网页或文件。换句话说,经过referer,网站能够检测目标网页访问的来源网页,若是是资源文件,则能够跟踪到显示它的网页地址。有了referer跟踪来源就好办了,这时就能够经过技术手段来进行处理,一旦检测到来源不是本站即进行阻止或者返回指定的页面。
若是想对本身的网站进行防盗链保护,则须要针对不一样的状况进行区别对待。
若是网站服务器用的是apache,那么使用apache自带的Url Rewrite功能能够很轻松地防止各类盗链,其原理是检查refer,若是refer的信息来自其余网站则重定向到指定图片或网页上。
.htaccess文件中加入下配置
- <span style="color:#009900;">#开启重写引擎
- RewriteEngine on
- #图片防盗链
- RewriteCond %{HTTP_REFERER} !http://rewrite/.*
- RewriteRule .*\.(jpg|jpeg|png|gif) daotu.jpg</span>
若是服务器使用的是IIS的话,则须要经过第三方插件来实现防盗链功能了,如今比较经常使用的一款产品叫作ISAPI_Rewrite,能够实现相似于apache的防盗链功能。另外对于论坛来讲还可使用“登陆验证”的方法进行防盗链。
3、以子之予攻子之盾,防盗链的破解
尽管防盗链技术愈来愈成熟,破解相对来讲难度较大,但在了解原理以后,大多均可以针对其防范的原理入手进行破解。
对于图片防盗链,已经有人给出了详细的破解代码,对应的代码页面笔者已上传到笔者之前的我的博客空间中,在转发图片时,在图片地址前面加上“http://www.z7z8.com.cn/old/pic.asp?url=”地址便可解决图片防盗链问题。若是有本身的网站空间能够直接从
http://www.z7z8.com.cn/old/pic.zip下载,解压后上传到本身的空间中,转贴时在图片地址前面加上“域名/路径/pic.asp?url=”便可。
对于文件资源的防盗链,能够经过人为的加上引用页的方法来解决不能下载的问题,如得到
http://www.z7z8.com.cn/old/pic.zip这一地址,下载时发现采用了防盗链技术,这时能够在新建下载任务时人为添加“引用页:”。由于绝大多数防盗链只是判断引用页是否是本站,因此这一方法能够突破防盗链进行下载,但不是全部状况下均有效。
默认状况下,迅雷的新建任务对话框中是没有“引用页”项的,须要在迅雷中执行“工具→配置”,在打开的“配置面板”对话框中,在“任务默认属性”标签中,勾选“新建面板显示引用页”复选框便可。
小提示:
上面讨论的只是较初级的防盗链也破解,随着技术的突飞猛进,防盗链技术也飞速发展,所以如今的防盗链技术也要先进、复杂得多了。因此上面提到的破解方法并不必定针对全部的防盗链状况适用。
参考自
http://windyli.blog.51cto.com/1300305/315283