设置IIS防止盗链,减少流量损失(ISAPI Rewrite)

国外服务器,流量都是收费的。如果您的图片或下载,被其它网站盗链,那浪费的是您自己的流量,自己的钱。如何设置IIS防止盗链,减少流量损失? 一种产品能比较好地支持IIS的UrlRewrite,名字叫ISAPI_Rewrite。

下载地址在: http://www.isapirewrite.com/

这里只有ISAPI Rewrite的一个LITE版本是免费的,其它都是trial版本。ISAPI Rewrite Lite的版本功能不支持虚拟站点配置,元数据监测和自动缓存清理。 但是基本的UrlRewrite功能都支持。也可以到这里下载:http://www.codepub.com/Software/View- Software-8709.html

IIS Rewrite 下载

点击这里下载 IIS Rewrite 组件

IIS Rewrite 配置

1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:/Rewrite)下。

IIS Rewrite

2、在“IIS管理器”里选择网站,右键,属性。

IIS Rewrite

3、选择“ISAPI”,点击“添加”。

IIS Rewrite

4、填入筛选器名称,如“rewrite”。

IIS Rewrite

5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。

IIS Rewrite

6、确认选择正确后,点击“确定”。

IIS Rewrite

7、点击“确定”,完成筛选器添加。

IIS Rewrite

8、重启IIS。

IIS Rewrite

IIS Rewrite

9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。

IIS Rewrite

IIS Rewrite 规则设置

解压后的 IIS Rewrite 组件目录(如 C:/Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可。

安装方法压缩包中 Readme.txt 也有说明。

如何进行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即可生效。

IIS防盗链的方法是在httpd.ini里面加入如下语句

RewriteCond Host: (.+)

RewriteCond Referer: (?!http:///1.*).*

RewriteRule .*/.(?:gif|jpg|png|exe|rar|zip) /block.gif [I,O]

然后重启IIS,这时防盗链就开始起作用了,其他网站盗链过来的请求都会被拒绝。 至此,我也终于可以摆脱了被盗链的烦恼了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值