【问题标题】:ELMAH.axd is browsable but will never log any of my errors?ELMAH.axd 是可浏览的,但永远不会记录我的任何错误?
【发布时间】:2010-01-06 20:33:50
【问题描述】:

我已经全部设置好了,我可以浏览到 /elmah.axd,但我一直在导致所有这些错误,它不会记录任何一个,它只是说“没有记录错误”......这到底是怎么回事我做错了吗?

这是我添加到 web.config 中的内容:

<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" />     
  </sectionGroup>
</configSections>

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

<httpModules>
  <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />  
</httpModules>

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

另外:这已经在我的 RegisterRoutes() 开始处

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

据我所知,ASP.NET MVC 1.0 已经不再重要了(根据 ELMAH 网站...)

【问题讨论】:

    标签: asp.net-mvc elmah


    【解决方案1】:

    配置似乎井井有条;我最好的猜测是您的 IIS Web 应用程序用户没有写入 App_Data 的权限。如果您已锁定权限,则应用程序用户将拥有读取权限,但没有写入权限。

    您可以打开权限或登录到 Web 路径之外的另一个目录(IMO 更安全一些),并确保在那里设置了用户的读/写权限。

    【讨论】:

      【解决方案2】:

      解决方案配方

      我从 nuget elmahelmah on XML log 安装,虽然我可以访问 http://localhost/elmah.axd,但没有获得预期的功能,但没有错误捕获。

      我向 APP_DATA 文件夹中的帐户 IIS_IUSERS 授予写入权限,它开始处理 HTTP 404 错误和 MVC 基础结构之外的错误。但它没有在 mvc 中记录异常。解决方案是从 nuget 安装 elmah.mvc 包并开始捕获所有异常。

      如果你的配置没问题,那么只需从 nuget 安装 elmah.mvc 包,它应该也开始在 mvc 中存储日志,而不仅仅是 HTTP 404。

      【讨论】:

        猜你喜欢
        • 2012-06-16
        • 1970-01-01
        • 2023-03-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多