ELMAH在ASP.NET MVC 4 app子文件夹中

时间:2013-02-14 12:39:59

标签: asp.net-mvc-4 elmah subdirectory

设定:

我在根文件夹(〜/ tracker)的子文件夹中有一个ASP.NET MVC 4应用程序。

我使用NuGet在MVC应用程序中安装了ELMAH。

开发机器:

在我的开发机器上,网站位于根目录。 ELMAH工作正常。

服务器上的问题:

在服务器上,我可以看到ELMAH页面,但是尽管生成错误,也不会记录任何错误。它只是说:“没有发现错误。”

它也没有任何样式。

服务器上的Web.config:

服务器web.config上的Elmah相关位是:

configSections:

<sectionGroup name="elmah">
      <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
      <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
      <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
      <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
    </sectionGroup>

的appSettings:

<appSettings>
    <add key="elmah.mvc.disableHandler" value="false" />
    <add key="elmah.mvc.requiresAuthentication" value="true" />
    <add key="elmah.mvc.allowedRoles" value="Admin" />
    <add key="elmah.mvc.route" value="tracker/elmah" />
  </appSettings>

的HttpModules:

<httpModules>
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
      <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
      <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
    </httpModules>

system.webServer:

<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
      <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
      <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
    </modules>
  </system.webServer>

最后:

<elmah>
    <errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="~/App_Data/Elmah" />
    <security allowRemoteAccess="yes" />
  </elmah>

1 个答案:

答案 0 :(得分:1)

好的,解决了这个问题:

为〜/ App_Data / Elmah文件夹添加写权限。

正如猫鼬说的,简单。

我通过找到以下SO答案解决了这个问题:

Elmah.MVC does not log errors in production environment

还有一个指南,用于设置ELMAH文件夹的权限,或者更确切地说,是指向该问题的接受答案中指南的链接。

我无法工作的是ELMAH页面的样式。有什么建议吗?