我在Web.config配置了目录下任何文件的防盗链,在XP的开发环境下没有问题,部署后就没有效果。
Web.config文件如下:
<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
....
</system.web>
<!-- Configuration for the "upload" subdirectory. -->
<location path="abc/bcd">
<system.web>
<httpHandlers>
<add verb="*" path="*.*" type="Lib.FolderHandler,Lib" />
</httpHandlers>
</system.web>
</location>
</configuration>
HttpHandler处理代码:
namespace Lib
{
public class FolderHandler : IHttpHandler, IReadOnlySessionState
public void ProcessRequest(HttpContext context)
{
....
public bool IsReusable
{
get
{
return true;
}
}
private void DownloadFile(string strFilename, HttpContext context)
{
......
}
}在VS2005发布网站后,在Win2003/WinXP运行都没有效果。
很奇怪?!?!哪位大虾能帮帮忙
Web.config文件如下:
<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
....
</system.web>
<!-- Configuration for the "upload" subdirectory. -->
<location path="abc/bcd">
<system.web>
<httpHandlers>
<add verb="*" path="*.*" type="Lib.FolderHandler,Lib" />
</httpHandlers>
</system.web>
</location>
</configuration>
HttpHandler处理代码:
namespace Lib
{
public class FolderHandler : IHttpHandler, IReadOnlySessionState
public void ProcessRequest(HttpContext context)
{
....
public bool IsReusable
{
get
{
return true;
}
}
private void DownloadFile(string strFilename, HttpContext context)
{
......
}
}在VS2005发布网站后,在Win2003/WinXP运行都没有效果。
很奇怪?!?!哪位大虾能帮帮忙
<appSettings/>
<connectionStrings/>
<system.web>
<httpHandlers>
<add verb="*" path="*.*" type="Lib.FolderHandler,Lib" />
</httpHandlers>
</system.web>
向这样设置成全局的,也是没有效果。难道VS2005发布网站的时候修改了什么东西????
http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpguide/html/cpconhttphandlerregistration.asp
确保将 HttpHandler 文件扩展名注册到 Internet 信息服务 (IIS) 中。不知道这个怎么实现
谢谢,能详细告诉如何在IIS里面配置吗?
我配置了几次没有成功。其实也就是配置txt,doc,jpg,gif等扩展名就可以了,和ASP.NET的类型不冲突
把需要的扩展名注册到aspnet_isapi.dll 就可以了。。哈哈
把需要的扩展名注册到aspnet_isapi.dll 2。*.*
使用Win2003通配符应用程序映射到aspnet_isapi.dll
cat_hsfz:
之前没明白"在那边也将*关联到ASP.NET的isapi"什么意思,以为是IIS的ISAPI筛选器呢,原来是 aspnet_isapi.dll 这个文件
ISAPI扩展 = ISAPI Extension,类似HttpHandler从这点上判断,ASP.NET肯定是Extension。