2011-03-22 43 views
7

我的Elmah在我的MVC 3網站上運行,並且讓我的本地開發機器上的一切工作。Elmah不能在IIS7服務器上工作

但是,現在我已將我的網站移至生產服務器,Elmah無法正常工作。我在我的現場服務器上使用與我在本地計算機上使用的相同的SQL帳戶(和連接字符串)。 EF4連接(與Elmah相同)工作得很好。

我在偶數日誌或SQL Profiler中看不到任何內容。我在SQL日誌中也看不到任何錯誤。

關於可能發生的事情或者我如何解決這個問題的任何想法?

在此先感謝。

+0

ELMAH + MVC + IIS7做的工作,我使用的組合。你用什麼來存儲日誌? SQL或文件? – 2011-03-22 06:44:54

+0

@JK - SQL Server 2005數據庫。 – 2011-03-22 06:49:14

回答

18

ELMAH正在使用HttpModule來記錄錯誤。對於IIS6,HttpModules在web.config文件中的System.Web下注冊。但是,對於IIS7 +,應該在system.webserver命名空間下注冊HttpModules。嵌入式開發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> 
+0

完美,這是問題所在。我找不到任何地方,謝謝你的幫助! – 2011-03-22 13:37:28

+2

很好的回答:)解決了我的問題。我只是想補充一點,以防你也想看到錯誤日誌頁面「elmah.axd」。由於採用了新的iis 7集成模式,您還必須在下注冊處理elmah.axd的httpModule,而不是在之下。在集成模式下,必須在統一的/中指定ASP.NET處理程序映射。請參閱http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis-7/ – 2011-07-10 10:29:52

相關問題