为什么elmah.axd重定向到/ Account / Logon?

时间:2011-10-15 17:08:12

标签: asp.net-mvc asp.net-mvc-3 logging elmah

尽我所知,根据http://www.asp.net/hosting/tutorials/logging-error-details-with-elmah-cs

的说明,我已经正确配置了elmah

但是,当我尝试在浏览器中访问elmah.axd时,MVC会将页面重定向到/ Account / LogOn(我的项目中不存在)。据我所知,我的项目中没有任何对此控制器或方法的引用......

有人可以解释我做错了吗?

3 个答案:

答案 0 :(得分:3)

这是激活表单身份验证时登录操作的标准位置。看起来您已全局对站点的所有部分执行此操作,这意味着需要对用户进行身份验证才能访问它。您可能已经注册了全局授权过滤器,或者您只需要configured elmah来要求身份验证才能访问。

答案 1 :(得分:0)

这是由于您在网站中设置的表单身份验证,可能已配置为阻止大多数网页。您需要将elmah.axd列入白名单(将< location>添加到web.config),或添加登录逻辑,因为此数据无论如何都不应公开。

另外,使用nuget更容易添加Elmah。

答案 2 :(得分:0)

正在发生的事情是表单身份验证导致重定向。

有两种解决方案:

1)在IIS中禁用表单身份验证

2)将以下内容添加到web.config

<system.web>
    <authentication mode="Forms">
        <forms loginUrl="~/Account/LogOn" timeout="2880" />
    </authentication>
</system.web>