asp.net-mvc – ELMAH – MVC 3 – 403 – 禁止:访问被拒绝

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – ELMAH – MVC 3 – 403 – 禁止:访问被拒绝前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经安装 Elmah for MVC使用NuGet,我可以登录成功错误在db。
唯一的问题是,我无法访问/ elmah URL访问错误日志页面

这里是我配置的一部分,如果我有任何配置错误,你能指出吗?

谢谢

错误

403 – Forbidden: Access is denied.
You do not have permission to view this directory or page using the credentials that you supplied.

在我的web.config:

<appSettings>
    <add key="webpages:Version" value="1.0.0.0" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
    <add key="elmah.mvc.disableHandler" value="false" />
    <add key="elmah.mvc.disableHandleErrorFilter" value="false" />
    <add key="elmah.mvc.requiresAuthentication" value="true" />
    <add key="elmah.mvc.allowedRoles" value="Administrator" />
    <add key="elmah.mvc.route" value="elmah" />
  </appSettings>

在global.asax:

public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("elmah.axd");
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default",// Route name
            "{controller}/{action}/{id}",// URL with parameters
            new { controller = "Home",action = "Index",id = UrlParameter.Optional } // Parameter defaults
        );
    }

解决方法

(这都是从文档/入门)

您不需要以下行:

routes.IgnoreRoute("elmah.axd");

下一行处理它。

您需要配置的所有内容都在您的web.config文件中。就像是:

<elmah>
  <security allowRemoteAccess="yes" />
  <errorLog type="Elmah.sqlErrorLog,Elmah" connectionStringName="MysqLConnString" />
</elmah>
<location path="elmah.axd">
  <system.web>
    <authorization>
      <allow roles="Administrator" />
      <deny users="*" />
    </authorization>
  </system.web>
</location>

应该让你去。

猜你在找的asp.Net相关文章