尽我所知,根据http://www.asp.net/hosting/tutorials/logging-error-details-with-elmah-cs
的说明,我已经正确配置了elmah但是,当我尝试在浏览器中访问elmah.axd时,MVC会将页面重定向到/ Account / LogOn(我的项目中不存在)。据我所知,我的项目中没有任何对此控制器或方法的引用......
有人可以解释我做错了吗?
答案 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>