Elmah和Sitecore以及404错误处理

时间:2012-11-15 12:00:21

标签: asp.net error-handling sitecore elmah

您好我正在尝试使用Sitecore设置ELMAH,我已经阅读了这个http://newguid.net/sitecore/2011/using-elmah-for-error-logging-within-sitecore/#t-recent,并且从我的角度来看,它的解决方案正常运行。 1. ELMAH跳过商店404存储在所有情况下的登录+ 2.如果URL包含“。”,Sitecore不会处理404错误。焦炭。例如 http:// mysite / wrongurl 将我重定向到404.html但 http://mysite/wrongurl.dfgd 向我显示应用程序中的服务器错误(IIS 7.5) (不是我的404.html) 这是我的设置只是关于ELMAH和处理错误

    <configSections>
    <sectionGroup name="elmah">
        <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah"/>
    </sectionGroup>  
  </configSections>
  <elmah>
     <!-- NetKeyElmah inside of App_Config\ConnectionStrings.config  -->
    <errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="ElmahData" />
  </elmah>
  <sitecore>
   <settings> 
      <setting name="ItemNotFoundUrl" value="/404.html" />      
      <setting name="LayoutNotFoundUrl" value="/404.html" />        
      <setting name="LinkItemNotFoundUrl" value="/sitecore/service/notfound.aspx" />
      <setting name="IgnoreUrlPrefixes" value="/sitecore/admin/elmah.axd|/sitecore/default.aspx" />
    </settings>
  </sitecore>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true">      
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
    </modules>
    <handlers>      
      <add name="Elmah" path="/sitecore/admin/elmah.axd" verb="POST,GET,HEAD" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />
    </handlers>        
  </system.webServer>
 <system.web> 
    <customErrors mode="On" defaultRedirect="/errorpage.html" >
      <error statusCode="404" redirect="/404.html" />
      <error statusCode="500" redirect="/500.html" />
    </customErrors>   
 </system.web>  

如何以正确的方式设置完成设置。

1 个答案:

答案 0 :(得分:3)

回应2。

默认情况下,IIS不会处理每种类型的文件。如果您希望IIS或Sitecore处理它无法识别的给定文件类型,则需要在web.config中指定该类型。更新web.config中的以下两个部分,以包含您希望Sitecore处理的文件类型:

<param desc="Allowed extensions (comma separated)">aspx, ashx, asmx, asp</param>

<param desc="Allowed extensions (comma separated)">aspx,asp</param>

在这些部分中,您将添加当前抛出错误的文件扩展名,这将使Sitecore处理您的文件类型。