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

如何使用ASP.NET和IIS 5.1 URL路由保护Elmah,.net,asp.net,asp.net-mvc,iis,elmah,.net,Asp.net,Asp.net Mvc,Iis,Elmah,这个问题基于以下问题: 该解决方案建议只要elmah.axd离开站点的根,就可以工作。如果您想保护此处的博客站点,该怎么办: ? 将elmah.axd移动到/admin/elmah.axd会破坏修复IIS 5x通配符映射模块 我的解决方法只是保护“elmah.axd”而不是“admin”,比如: 虽然这是可行的,但我觉得必须有一个更优雅的解决方案。有什么想法吗?这就是我在项目中使用的解决方案。任何其他更“优雅”的东西都会更加复杂和不必要 它做到了这一点,而且很简单,如果我是你的话,我会保持

这个问题基于以下问题:

该解决方案建议只要elmah.axd离开站点的根,就可以工作。如果您想保护此处的博客站点,该怎么办: ?

将elmah.axd移动到/admin/elmah.axd会破坏修复IIS 5x通配符映射模块

我的解决方法只是保护“elmah.axd”而不是“admin”,比如:



虽然这是可行的,但我觉得必须有一个更优雅的解决方案。有什么想法吗?

这就是我在项目中使用的解决方案。任何其他更“优雅”的东西都会更加复杂和不必要


它做到了这一点,而且很简单,如果我是你的话,我会保持这样:-)

你也可以将elmah.axd重命名为不太明显的名称。该名称可在web.config中配置。

要添加到@Todd Smith的答案中:

如果要重命名elmah.axd,只需在处理程序中更改名称

<add name="Elmah" path="ANY_NAME_YOU_LIKE.axd" verb="POST,GET,HEAD" type="Elmah.ErrorLogPageFactory, Elmah"/>

<add name="Elmah" path="ANY_NAME_YOU_LIKE.axd" verb="POST,GET,HEAD" type="Elmah.ErrorLogPageFactory, Elmah"/>