我已经在我的MVC 3网站上运行了Elmah,在本地开发机器上所有工作都正常,但现在我把网站移到生产服务器上后,Elmah不起作用了。我在生产服务器上使用的是与本地机器相同的SQL帐户(及连接字符串)。EF4连接(与Elmah相同)也运作正常。在事件日志或SQL分析器中没有任何内容。SQL日志中也没有任何错误。对于这种情况你有什么想法或如何排除故障的建议吗?谢谢。
ELMAH使用HttpModule来记录错误。对于IIS6,HttpModules在web.config文件中注册在System.Web下。然而,对于IIS7+,HttpModules应该在system.webserver命名空间下注册。嵌入式开发Web服务器将使用IIS6配置。
IIS6:
<system.web>
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
</httpModules>
</system.web>
IIS7:
<system.webServer>
<modules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
</modules>
</system.webServer>