我在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运行都没有效果。
很奇怪?!?!
尝试了多种方法都没有解决。
后来看到需要 注册 HttpHandler
http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpguide/html/cpconhttphandlerregistration.asp
确保将 HttpHandler 文件扩展名注册到 Internet 信息服务 (IIS) 中。
尝试了注册相应的dll文件,还是无效。
最后看到
http://www.5d.cn/Discover/idea/200608/4268_2.html
在注册HttpHandler的时候必须注意HttpHandler所使用的文件扩展名必须已经在IIS中做指向ASP.NET引擎的映射,在上面.scott扩展名的例子中,如果我们所使用的.scott扩展名如果没有在IIS中做指向ASP.NET引擎的映射的话,假定对foo.scott文件发出请求,该请求 将导致IIS将foo.scott文件内容直接呈现给客户端,为了能够让HttpHandler处理该请求,必须将.scott扩展名在IIS中做指向ASP.NET引擎的映射,之后IIS才能正确地将.scott的请求转交给相应的HttpHandler。
把需要的扩展名注册到aspnet_isapi.dll 就可以了。。哈哈
方法如下
1。单独扩展名
把需要的扩展名注册到aspnet_isapi.dll
2。*.*
使用Win2003通配符应用程序映射到aspnet_isapi.dll
分享到:
相关推荐
然而,在某些情况下,如标题所示,“session在httphandler失效”,这可能会导致应用程序出现问题。下面将详细解释这个问题,以及可能的原因和解决方案。 首先,让我们理解Session的工作原理。ASP.NET的Session是...
1. **注册HttpHandler**:同样在`Web.config`中,我们可以在`system.web/httpHandlers`节中配置处理器,指定其扩展名和处理程序类型。 2. **实现IHttpHandler**:自定义的HttpHandler需要实现`IHttpHandler`接口,...
HttpHandler 和 HttpModule 在 ASP.Net 应用的自定义 Http 处理和应用中扮演着关键角色。 概述:HttpHandler 和 HttpModule 是 ASP.Net 应用程序中两个重要的组件,它们提供了自定义 Http 处理和应用的能力。...
对于图片水印的需求,我们可以创建一个自定义的HttpHandler,专门处理图片请求并在返回图片前添加水印。 以下是创建HttpHandler的基本步骤: 1. 创建一个新的类并实现IHttpHandler接口。例如,我们可以将类命名为`...
在本篇中,我们将深入探讨HttpHandler的概念、工作原理以及如何编写自定义HttpHandler。 HttpHandler是ASP.NET应用程序中处理特定类型HTTP请求的类。每当一个用户向服务器发送请求时,IIS(Internet Information ...
利用HttpHandler创建自定义后缀Rss源 通过IhttpHandler实现图片验证码 使用HttpHandler实现图片防盗链
在"通用 万能 HttpHandler"的设计中,可能包含了以下特性: 1. **兼容性**:能够处理各种不同类型的文件上传请求,不论文件大小或类型。 2. **灵活性**:支持多种上传方式,如单个文件上传、多个文件批量上传,或者...
在ASP.NET中,我们可以使用HttpHandler来实现这一功能。 **HttpHandler** 是ASP.NET中的一个核心组件,它处理HTTP请求并返回响应。通过自定义HttpHandler,我们可以拦截特定类型的请求,并对其进行定制处理。在实现...
在.NET框架中,HTTP处理器(HttpHandler)是处理HTTP请求的核心组件,它们负责解析和响应来自Web客户端的请求。在ASP.NET中,我们通常使用IHttpHandler接口来创建自定义的HTTP处理器。当我们谈论“异步HTTP处理器”...
在这个项目中,C#代码实现了HttpHandler的逻辑,包括读取原始图片、应用裁剪参数、生成裁剪后的图片,并返回响应给客户端。此外,可能还包括处理上传图片、存储裁剪设置等业务逻辑。 4. **图像处理**: 图像裁剪...
示例: Hello,HttpHandler(最简单的HttpHandler) -------------------------------------------------------------------------------- 示例: 使用HttpHandler实现文件下载页面 ---------------------------------...
在本主题中,我们将深入探讨如何使用HttpHandler来为系统图片添加水印,这是一个常见的图像处理任务,通常用于版权保护或者增加视觉效果。水印图片HttpHandler的实现涉及图像处理、HTTP请求生命周期以及自定义处理器...
在ASP.NET开发中,"HttpHandler防图片盗链"是一个重要的技术实践,它涉及到网站资源保护、服务器性能优化以及网络安全等多个方面。通过Web.config配置,我们可以实现一个简单但有效的图片防盗链策略,防止他人未经...
asp.net 防注入的 HttpHandler asp.net 防注入的 HttpHandler
在这个主题中,我们将深入探讨ASP.NET架构中的两个关键组件:HttpHandler和HttpModule。 **HttpHandler**是ASP.NET处理HTTP请求的核心组件。每个HTTP请求都会被路由到一个特定的HttpHandler,它负责处理特定类型的...
- HttpHandler类在服务器端被实例化并处理请求,可能只需简单地返回"Hello World"字符串。 - 服务器响应仅包含这个字符串,客户端接收到后将其显示在适当位置。 3. **Callback** Callback(也称为Partial ...
在本文中,我们将深入探讨HttpHandler的概念、工作原理以及如何在Community Server中应用HttpHandler。 HttpHandler是ASP.NET管道模型的一部分,这个模型包括一系列的事件和阶段,从请求到达服务器到响应返回客户端...
- `HttpHandler`仅在特定情况下被调用,因此在性能方面通常更为优秀。 通过以上内容的学习,我们可以更好地理解`HttpModule`和`HttpHandler`的工作原理及其应用场景,从而在实际开发中做出更合理的选择。
jQuery + HttpHandler 实现图片裁剪(适用于论坛, SNS)