巧用ISAPI_Rewrite规则写IIS防盗链

巧用ISAPI_Rewrite规则写IIS防盗链巧用ISAPI_Rewrite规则写IIS防盗链关键是httpd.ini的设置首先,必须要保证httpd.ini有可写权限,设置isapi_rewrite安装文件夹IIS_来宾,IIS_进程读写权限。httpd.ini默认设置如下:RewriteCondHost:(.+)RewriteCondReferer:(?!http:///1.*).*我们在它后面加上一句Rewr

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

巧用ISAPI_Rewrite规则写IIS防盗链

关键是httpd.ini的设置
首先,必须要保证httpd.ini有可写权限,设置isapi_rewrite安装文件夹IIS_来宾,IIS_进程读写权限。
httpd.ini默认设置如下:

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

我们在它后面加上一句

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

即可实现gif/jpg/png/exe/rar/zip文件的防盗链,盗链页面显示的是/block.gif(改图片放到你要做防盗链的站的目录下)。block.gif是一个体积较少的图片文件,我们可以在上面打上自己网站的版权标志和防盗链声明。
如果按照上面设置,则除本站以外的所有网站均不能使用这里的图片,如果要允许一些例外的网站比如google,baidu以及其它一些非营利性网站引用该怎么办呢?我们可以用如下正则表达式来实现

RewriteCond Referer: (?!http://(?:www/.uurenti/.com|www/.google/.com|www/.baidu/.com)).+

如果想允许所有google子站和baidu子站形如images.baidu.com,images.google.com等站则做如下设置:

RewriteCond Referer: (?!http://(?:*/.uurenti/.com|uurenti/.com|*/.google/.com|google/.com|*/.baidu/.com|baidu/.com)).+

至此,一个相当有效的防盗链系统已经出来了,但如上设置有一个问题,如果浏览者浏览了盗链页面后访问本站页面,则被盗链图片的缓存会影响图片的正常显示。把

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

改为

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

方可。参数N的意思是重新从站点请求文件而不是从本地缓存读取。

最后,你如果想那个站点放盗链,那只需要到IIS下该站点属性—ISAPI筛选器—添加……REWRITE.DLL(在你的安装目录下)

然后重新启动IIS!

 

转自:http://2seu.com/yeguizu/Article/xingwei/200810/150.html

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 100套大数据可视化炫酷大屏Html5模板

    100套大数据可视化炫酷大屏Html5模板100套大数据可视化炫酷大屏Html5模板;包含行业:社区、物业、政务、交通、金融银行等,全网最新、最多,最全、最酷、最炫大数据可视化模板。源码地址 giteehttps://gitee.com/iGaoWei/big-data-view githubhttps://github.com/iGaoWei/BigDataView 使用说明 直接下载,使用浏览器访问静态页面即可。 git拉取代码$gitclonehttps://gitee….

    2025年9月29日
    4
  • python与java的区别(java 和python)

    java和python区别Python或Java,哪个更好?这个问题在全球开发者社区引发了许多激烈的讨论。初学者开发人员可能对应该掌握两者中的哪一个有所怀疑。初创公司和公司可能想知道哪种方案在他们的下一个项目中会更好。这两种语言都可以以相同的效率解决许多任务,这不足为奇。但是,在某些情况下,一个人可以击败另一个人。在本文中,我们将基于多个方面来分析它们的优缺点。对于那…

    2022年4月18日
    85
  • ST-Link SWD接口接线

    ST-Link SWD接口接线1、实验目的:实现通过st-link调试stm32芯片2、实验环境:stm32开发板留有20pin的调试接口,可接jlink和stlink调试工具使用st-linkv23、接线方式SWD接口需要连接四根线:VCCGNDSWDIOSWCLK20pin调试接口对应的pin脚关系:Pin1–VCC:ThisisthetragetboardVcc.Itisusedbythe

    2022年5月20日
    65
  • linux查看iostat_ios命令行怎么打开

    linux查看iostat_ios命令行怎么打开简介iostat主要用于监控系统设备的IO负载情况,iostat首次运行时显示自系统启动开始的各项统计信息,之后运行iostat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。命令格式及参数iostat[-c|-d][-k|-m][-t][-V][-x][device[…]|ALL][-p[…

    2022年10月6日
    6
  • 5款优秀的文档管理系统「建议收藏」

    5款优秀的文档管理系统「建议收藏」1.easyopen一个简单易用的接口开放平台,平台封装了常用的参数校验、结果返回等功能,开发者只需实现业务代码即可。技术点加密算法(MD5、AES、RSA) Netty(编解码、长连接、断开重连) 限流(漏桶策略、令牌桶策略) 权限(RBAC、校验) session(单机、分布式) 注解(文档生成) token(jwt、accessToken) SDK(Java、C#…

    2022年5月18日
    68
  • 节流 防抖 技术

    节流 防抖 技术节流优化网络请求预设一个函数只有大于等于执行周期时才会执行该函数 周期内调用该函数不执行如同水滴积累够一定重量后才会落下应用场景 1 连续点击按钮切需求为间隔请求例如页面的 刷新 按钮 2 上拉加载获取数据的 上拉加载 节流技术的实现原理获取 newDate 时间求的时间差来限制一定时间内只允许执行一次指定函数以此来达到限制网络请求

    2025年9月30日
    3

发表回复

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

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