前段时间因为需要,使用了早闻大名的 ISAPI_Rewrite 。当然我是用在x86上的IIS里...
我很懒,我不愿意花太多时间在写生成html模块上面,本身程序拿来后改得面目全非增加些需要的功能就已经够呛了。这时代的脚步也太快,所以最终我选择了伪htm,url重写技术。而把时间花在一些可以走得更长远些的项目上面。
      我以下的设置虽然简单,但可以说它是比较经典了,应该可以满足大部份需求!因为搜索引擎里能搜到的我全看过了,英文说明还是不错的,翻译的就别看了,浪费时间。最看不惯的还是那些千篇一律的抄袭,搜索到的80%都是重复内容 @_@!

废话不多说:


[ISAPI_Rewrite]
#伪Html部份
#下面是第一行
RewriteRule /mccvod/vod/MovieView_(\d+)_(.*).html /mccvod/vod/MMShow.asp\?ID=$1&Title=$2 [N,I]
RewriteRule /mccvod/vod/MovieList_(\d+).html /mccvod/vod/MovieList.asp\?TypeID=$1
RewriteRule /mccvod/vod/MovieList.html /mccvod/vod/MovieList.asp
RewriteRule /default.html /default.asp

#防盗链部分
#下面是第七行
RewriteCond Host: (.+)
RewriteCond Referer: (?!http://\1.*).*
RewriteCond Referer: (?!http://(?:.*\.cnmmx\.net|cnmmx\.net|.*\.google\.com|google.com|.*\.baidu\.com|baidu\.com)).+
RewriteRule .*\.(?:gif|jpg|png|exe|rar|zip) /nolink.jpg [I,O,N]

#结束

只有两个文件:
ISAPI_Rewrite.dll   (加载于欲防站点,需重启iis)
http.ini                   (站点根目录,修改保存后实时生效。以下就是我的http.ini中的内容)

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


因为读取的是Referer(流媒体是不Referer滴),所以流媒体的防盗链未找到解决方案,摸索中。。。
如果你有流媒体的防盗链解决方案记得要找我分享一下哦!
当然一定要是ISAPI_Rewrite实现的~~
其它的我已经有一堆了。。。