【问题标题】:Custom HTTP Handler Not Working in IIS 7 and above & Integrated Mode自定义 HTTP 处理程序在 IIS 7 及更高版本和集成模式下不起作用
【发布时间】:2013-09-17 20:12:45
【问题描述】:

我正在创建一个自定义图像处理程序来处理所有 *.jpg 请求。 IIS之间有什么区别

添加脚本映射

添加托管句柄

我应该使用哪一个?看来我不需要 ASP.NET 框架的所有开销,因为我的整个应用程序只处理图像输出。

【问题讨论】:

    标签: asp.net iis-7 httphandler


    【解决方案1】:

    两者的区别是:

    • 脚本映射 - 用于将请求映射到“本机代码”处理程序,即不是托管代码的代码,例如 C#/VB.NET。这是一项遗留功能,因此您可以将请求映射到符合 CGI 规范的本机代码可执行文件或 dll。例如,将*.pl 映射到 Perl 解释器。

    • 托管处理程序 - 这些用于将请求映射到“托管代码”。例如使用 C# 或 VB.NET 编写处理程序。

    因此,如果您的自定义图像处理程序是用多种 .NET 语言(C#、VB.NET、托管 C++ 等)中的一种编写的,那么您需要添加一个托管处理程序。

    【讨论】:

    • 我已经使用 ASP.Net Web 应用程序项目创建了我的处理程序,并在我的 App_Code 文件夹中为处理程序创建了类文件。现在工作正常。但是现在我很想知道,如果没有整个 ASP.Net 结构,我怎样才能使这个东西工作?
    • @user2789150 - 那么您网站中唯一的 ASP.NET 代码就是处理程序?
    • 是的,Kev,我已经为它创建了单独的站点。
    • @user2789150 - 您应该能够在构建后从bin 文件夹中复制输出二进制文件,然后将其放入您站点中的/bin 文件夹中。
    • 凯夫感谢您的帮助。难道没有更理想的方法来编译这个托管处理程序,而无需我像网站一样创建它并只窃取 bin 文件夹吗?此外,我还有一个看起来很奇怪的 web.config 文件,我在那里设置了处理程序信息,到目前为止我还不需要通过 IIS 创建托管处理程序。看来我一定是做错了什么,仍然带来了不需要的 ASP.NET 开销。
    猜你喜欢
    • 1970-01-01
    • 2014-05-07
    • 1970-01-01
    • 2011-04-18
    • 1970-01-01
    • 2013-09-14
    • 2010-10-25
    • 2011-12-09
    • 2021-10-30
    相关资源
    最近更新 更多