我正在构建一个引用程序集的网站,该程序集包含几个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,使用IIS5或6调试网站似乎没有问题),控件就不能再访问脚本了。我得到一个HTTP404.0错误屏幕,指出StaticFileHandler找不到该文件。我知道-这是内嵌的。
因此,StaticFileHandler似乎在我的脚本之前获取了对脚本的请求,并返回了404。如何告诉IIS对嵌入的/controlscripts目录使用我自己的资源处理程序,而不是使用staticfilehandler?顺便说一下,我在经典模式下运行网站。
发布于 2009-10-30 17:39:38
我也偶然发现了这一点。我的错误是我在system.web而不是system.webserver下注册了处理程序。
https://stackoverflow.com/questions/806525
复制相似问题