巧用ISAPI_Rewrite规则写IIS防盗链(转)

巧用ISAPI_Rewrite规则写IIS防盗链(转)因为网站的关系,不得不把服务器加上防盗链,以前在Apache上的时候很省力,Apache的规则直接可以Referer就可以防盗链,现在当然我是在X86的IIS6.0上,上面那一套没用了,早听闻ISAPI_Rewrite的名气,但无奈是收费的,这些额外开支能省就省吧~我可不是大户囧,而我又是很懒的,不愿意花太多时间改ASP的生成HTML的模块上,本来程序就已经被我这改改那改改的了。结合上面情况,最后…

大家好,又见面了,我是你们的朋友全栈君。

因为网站的关系,不得不把服务器加上防盗链,以前在Apache上的时候很省力,Apache的规则直接可以Referer就可以防盗链,现在当然我是在X86的IIS6.0上,上面那一套没用了,早听闻ISAPI_Rewrite的名气,但无奈是收费的,这些额外开支能省就省吧~我可不是大户囧,而我又是很懒的,不愿意花太多时间改ASP的生成HTML的模块上,本来程序就已经被我这改改那改改的了。结合上面情况,最后还是选择了伪htm,url重写技术。下面是一些我自己服务器上写的规则,应该能满足常用的了。看了英文的ISAPI_Rewrite,觉得还是很有用的,中文的就算了。搜索ISAPI_Rewrite规则,第一页所有的文章都一样orz…

 

[ISAPI_Rewrite]
#伪Html部份
RewriteRule /article_([0-9,a-z]*).html /article.asp\?id=$1
RewriteRule /default([0-9,a-z]*).html /default.asp\?$1
RewriteRule /default_([0-9,a-z]*).html /default.asp\?cateID=$1
RewriteRule /default.html /default.asp

#防盗链部分
RewriteCond Host: (.+)
RewriteCond Referer: (?!http://\1.*).*
RewriteCond Referer: (?!http://(?:.*\.kenvi\.cn|kenvi\.cn|.*\.google\.com|google.com|.*\.baidu\.com|baidu\.com)).+
RewriteRule .*\.(?:gif|jpg|png|exe|rar|zip|torrent|bmp|pdf) /badlink.png [I,O,N]
#结束

只有两个文件:
ISAPI_Rewrite.dll (加载于欲防站点,需重启iis)
http.ini (存放在ISAPI_Rewrite.dll的同级目录,修改保存后实时生效。)

解释
第一行:将article.asp?id=1 转为使用article_1.html来访问
第二行:这个就是典型的单参数例子,多参数例子就是第一行罗,如果title不是中文就把 .* 换成 \d+
第三行:这个就是典型的无参数例子
第四行:这个还是典型的无参数例子 ^_^
第五行:空白
第六行:注释
如果需要防盗链,第七行第八行照抄
第九行:设置友情站点,这些站点可以访问网站上的资源。“.*\.google\.com”.* 是代表任意前缀。
第十行:设置受限文件格式, [I,O,N] 后面的 N 用来防止防问了盗链者网站后将badlink.png 缓存下来(再访问你的站点使用缓存的badlink.png 就不雅观啦)

转载于:https://www.cnblogs.com/aaa6818162/archive/2009/06/18/1505948.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163501.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月23日 下午3:00
下一篇 2022年7月23日 下午3:00


相关推荐

  • 16个时髦的扁平化设计的 HTML5 & CSS3 网站模板

    16个时髦的扁平化设计的 HTML5 & CSS3 网站模板创建网站最好办法之一是使用现成的网站模板或使用开源 CMS 应用程序 所以 今天这篇文章给大家带来的是 16 款基于 nbsp HTML5 amp nbsp CSS3 nbsp 的精美的扁平风格网站模板 大家可以借助这些优秀的网站模板创建自己的优秀网站 这些网站模板虽然是收费 但是都提供了在线演示 所以 你懂的 您可能感兴趣的相关文章 35 款精致的 CSS3 和 HTML5 网页模板 12 款高质量的免费

    2026年3月17日
    3
  • 智能算法学习总结

    智能算法学习总结本科的时候学习了智能信息处理这门课程,所使用的教材是《计算智能》张军,詹志辉.计算智能[M].清华大学出版社,2009.11之前回忆了一下一些还有点记忆的算法,写了一点博客如下:1、神经网络的基础知识与简单分类编程https://blog.csdn.net/SweeNeil/article/details/865313842、模糊逻辑基本原理与编程https://…

    2022年6月22日
    24
  • 详解 YOLO3

    详解 YOLO3YOLOv3没有太多的创新,主要是借鉴一些好的方案融合到YOLO里面。不过效果还是不错的,在保持速度优势的前提下,提升了预测精度,尤其是加强了对小物体的识别能力。本文主要讲v3的改进,由于是以v1和v2为基础,关于YOLO1和YOLO2的部分析请移步YOLOv1深入理解和YOLOv2/YOLO9000深入理解。YOLO3主要的改进有:调整了网络结构;利用多尺度特征进行对象检测;对象…

    2022年6月24日
    34
  • Hacking Diablo II之D2HACKIT技术详解

    Hacking Diablo II之D2HACKIT技术详解趁着圣诞又歇了几天,没博,倒是主动被动的看了不少片子。我发现我的观影口味挺杂,什么都看,还什么都能看的津津有味。这些片中,有肥皂剧型的“AllyMcBeal”(甜心俏佳人),柯恩兄弟的黑帮型的"Miller’sCrossing",闷骚型的“CountryLife”,一直想看的“北京乐与路”,还有成龙大叔的“神话”。前几天有博友留言希望我多谈点儿d2hackit,那我就随便说说。D2中的外挂,…

    2022年5月5日
    109
  • 一般报java.lang.NullPointerException的原因有以下几种

    一般报java.lang.NullPointerException的原因有以下几种一般报 java lang NullPointerE 的原因有以下几种 字符串变量未初始化 接口类型的对象没有用具体的类初始化 比如 Listlt 会报错 Listlt newArrayList 则不会报错了 当一个对象的值为空时 你没有判断为空的情况 你可以试着把下面的代码前加一行代码 if rb null nbsp

    2026年3月19日
    1
  • 万能乘法速算法大全_小学生两位数乘法容易出错?只因没掌握这个“万能”速算法…

    万能乘法速算法大全_小学生两位数乘法容易出错?只因没掌握这个“万能”速算法…儿童节快乐两位数乘法,在小学阶段的数学学习当中,是经常遇到的。尤其是小学三、四年级,每当遇到这类乘法,小学生都非常容易出错,甚至一算就错。原因是,一些比较大的两位数,在用列竖式法相乘时,会出现连续进位,一旦有一个环节,进位失误了,就会导致整个乘法出现错误,结果为零分。因此,这类运算,很让老师头疼。那么,有没有实用的速算法,可以解决这类乘法问题,而且不出错呢?有!今天,就分享一种“万能”两…

    2022年6月7日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号