<b>用ISAPI_Rewrite做IIS防盗链</b>[服务器安全]
本文“<b>用ISAPI_Rewrite做IIS防盗链</b>[服务器安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
“盗链”的定义是:此内容不在自己服务器上,而通过技术手段,绕过别人放广告有好处的终究页,直接在自己的有广告有好处的页面上向终究用户供应此内容. 常常是一些名不见经传的小网站来盗取一些有实力的大网站的地址(比方一些音乐、图片、软件的下载地址)然后安排在自己的网站中,通过这种办法盗取大网站的空间和流量.
为什么会产生盗链
普通浏览有一个重要的现象就是一个完好的页面并非一次全部传送到客户端的.假如恳求的是一个带有很多图片和别的信息的页面,那么最早的一个Http恳求被传送回来的是这个页面的文本,然后通过客户端的浏览器对这段文本的注释履行,发现此中还有图片,那么客户端的浏览器会再发送一条Http恳求,当这个恳求被处理后那么这个图片文件会被传送到客户端,然后浏览器回将图片安设到页面的精确位置,就这样一个完好的页面大概要经过发送多条Http恳求才可以被完好的显示.基于这样的机制,就会产生一个问题,那就是盗链问题:就是一个网站中假如没有起页面中所说的信息,比方图片信息,那么它完好可以将这个图片的衔接到别的网站.这样没有任何资源的网站操纵了别的网站的资源来展示给浏览者,提高了自己的拜候量,而大部份浏览者又不会很简单地发现,这样明显,关于那个被操纵了资源的网站是不公道的.一些不良网站为了不增添本钱而扩大自己站点内容,常常盗用其他网站的链接.一方面侵害了原网站的合理好处,另一方面又加重了服务器的负担.
我碰到的盗链
我的网站碰到最多的是两类盗链,一是图片盗链,二是文件盗链.曾经有一个拜候量极大的网站盗链我网站的图片,一天竟然损耗了数G的流量.同时,我站放的不少几十兆的大型软件也常遭到文件盗链,大量损耗我站资源.
盗链的办理筹划
其实通过WEB服务器的URL过滤技术,这个伤头脑的问题会很简单得到办理.
假如WEB服务器用的是APACHE的话,那么利用APACHE自带的Url Rewrite功效可以很轻松地避免各种盗链,其原理是查抄REFER,假如REFER的信息来自其他网站则禁止拜候所需求的资源.
那么,IIS支持UrlRewrite吗?
答案很简单,不支持.但是我们可以通过安装第三方服务器扩大让IIS支持.
目前有一种产品能对比好地支持IIS的UrlRewrite,名字叫ISAPI_Rewrite.
下载地址在: http://www.helicontech.com/download/
这里只有ISAPI Rewrite的一个LITE版本是免费的,别的都是trial版本.ISAPI Rewrite Lite的版本功效不支持虚拟站点配置,元数据监测和自动缓存清理. 但是基本的UrlRewrite功效都支持.也可以到这里下载:http://www.codepub.com/Software/View-Software-8709.h...
若何举行UrlRewrite的设置?
isapi_rewrite操纵正则表达式举行替换法则的表示.
下面是一个简单的例子,我想让我们的用户输入 http://localhost/test-12314.html 实际上拜候的是 http://localhost/test.asp?id=12314 .那么我们的匹配表达式应当是 /test-([0-9]*).html 对应的格局化表达式应当为 /test.asp\?id=$1 .
举行正则表达式的编写的时刻,可以操纵isapi_rewrite供应的正则表达式测试工具(默许安装供应),举行调试.做好了匹配表达式和格局化表达式,我们可以把它们放到安装目录下的httpd.ini里面.文件保存后,不需重新启动iis便可见效.
关于我的网站,我防盗链的办法是在httpd.ini里面加入以下语句
RewriteCond Host: (.+)
RewriteCond Referer: (?!http://\1.*).*
RewriteRule .*\.(?:gif|jpg|png|exe|rar|zip) /block.gif [I,O]