如何让Elmah使用ASP.NET和IIS 5.1 URL路由

J.C*_*.C. 14 .net asp.net iis asp.net-mvc elmah

我在通过本地IIS 5.1 Web服务器运行ASP.NET MVC应用程序时遇到问题.我相信这些问题与IgnoreRoutes有关,但我似乎无法制作一个IgnoreRoute,以便解决问题.

问题:

我能够查看我的elmah错误页面(localhost/mvcapplication1/elmah.axd),但是缺少CSS并且没有链接工作.

重现步骤

1)创建ASP.NET MVC 1.0应用程序

2)添加Elmah.下载程序集,将它们添加到项目中并使用Elmah Setup Instructions中的步骤

3)从属性页 - > Web将应用程序切换到"使用本地IIS Web服务器"

4)添加通配符映射.也就是说,打开IIS,转到属性 - >虚拟目录 - >配置 - >添加:可执行文件:C:\ WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll扩展:.*限制到:GET,HEAD,POST,DEBUG取消选中"检查文件是否存在".

5)验证routes.IgnoreRoute("{resource}.axd/{*pathInfo}");Global.aspx的RegisterRoutes中是否存在.顺便说一下,我也试过了routes.IgnoreRoute("elmah.axd");

现在..运行应用程序并调出localhost/mvcapplication1/elmah.axd.

没有CSS和链接被破坏.

如果我删除通配符映射,一切都很好,但随后应用程序URL路由不再有效.我理解这一点,但我应该能够使用正确的IgnoreRoute方案拉出elmah.axd.

思考?

eu-*_*-ne 12

将FixIIS5xWildcardMapping模块添加到web.config:

<httpModules>
    <add name="FixIIS5xWildcardMapping" type="Elmah.FixIIS5xWildcardMappingModule, Elmah"/>
</httpModules>
Run Code Online (Sandbox Code Playgroud)

  • 我也有同样的问题.用IIS5.1运行XP,这对小猪进行了分类.我在所有IIS7解决方案中偶然发现了这个问题:) (2认同)