由于资源的限制与保护,现在很多网站都启用了防盗链机制,在ASP.NET实现防盗链其实很轻松。
源码原理与设计思路[2005-10-09更新]
基本原理就是通过IIS把那些不需要服务器处理的文件提交给asp.net处理 再使用IHttpHandler将相关文件的处理交给指定的IHttpHandler 这是最基本的原理 关于防盗链也就是比较来访页是否是站点文件的小技俩而已 我在这个判定中加个个文件名的格式规则 最后还是与所有的东西一样 允许访问则输出要访问的原文件,原则输出错误提示.
如何在服务器上配置[2005-10-09更新]
1.在将生成的eWebapp.NoLink.dll文件拷贝到网站Bin目录.
2.在Web.config 里配置<httpHandlers>
    <add verb="*" path="*.过滤的文件格式"  type="eWebapp.NoLink.IHandler,eWebapp.NoLink"/>
</httpHandlers>也可以有Path中配置多种文件格式的过滤,格式如(path="*.jpg,*.bmp,*,exe")
3.在IIS里增加一个应用程序扩展。在“默认网站”->“属性”->“主目录”->“配置”。在弹出的“应用程序配置”窗口里按“添加”,在弹出的“添加/编辑应用程序扩展名映射”窗口里“可执行文件”选择C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll,在扩展名里输入“.过滤的文件格式”,然后确定即可。
源码:[url=http://www.ewebapp.net/data/2005/10/9/ASPNET_Nolink/eWebapp.Nolink.Source.htm]http://www.ewebapp.net/data/2005/10/9/ASPNET_Nolink/eWebapp.Nolink.Source.htm[/url]