代码之家  ›  专栏  ›  技术社区  ›  Dan Maharry

如何使用自己的httphandler预先设置iis staticfilehandler

  •  1
  • Dan Maharry  · 技术社区  · 15 年前

    我正在构建一个网站,引用一个程序集,该程序集包含几个js脚本作为嵌入式资源,一些使用这些脚本的控件,以及一个“httpresourceshandler”,它知道如何在需要时检索这些嵌入式脚本。

    在web.config中,我在部分中有一个条目

    <add verb="*" 
         path="/embedded/controlscripts/*" 
         validate="false" 
         type="CWeb.Controls.Web.HttpResourcesHandler, CWeb.Controls.EditBox" />
    

    当使用visual studio web开发服务器进行调试时,此控件和网站工作得非常好,但是如果我随后将网站切换到在iis下运行(v7-我正在运行vista,并且使用iis 5或6调试网站似乎没有问题)。控件不能再访问脚本。我得到一个http 404.0错误屏幕,指示staticfilehandler找不到该文件。我知道-它是嵌入的。

    因此,staticfilehandler似乎是在我自己的脚本之前获取脚本请求并返回404。如何告诉iis对嵌入的/controlscripts目录使用自己的资源处理程序,而不是staticfilehandler?顺便说一句,我正以经典模式运行这个网站。

    1 回复  |  直到 14 年前
        1
  •  2
  •   Community CDub    7 年前

    我也在这件事上搞砸了。 我的错误是我把处理程序注册到Sealth.Web而不是Sypal.WebServer。

    Check this post for details