2012-05-20 99 views
2

我在IIS 7上deplyoed asp.net mvc 3 razor視圖引擎應用程序。使用windows server 2008與sql server 2008的服務器。有安裝asp.net mvc 3asp.net mvc 3 web應用程序部署後不工作

我已經點擊Visual Studio 2010中的發佈按鈕。在本地文件夾上發佈它,然後複製到服務器中。

我收到錯誤>Sorry, an error occurred while processing your request.

該錯誤只顯示其中的觀點確實需要SQL連接,以便其他網頁加載完美。

我確定我已更改連接字符串與正確的連接字符串。

請幫我,沒有任何有用的網站。

感謝

+0

您可以打開網頁服務器上的頁面嗎?所以你得到一個具體的錯誤。您還應該檢查web.config中的配置以查找錯誤頁面。 (僅限遠程,關閉,開啓) – kapsi

+0

您使用「可信連接」還是將憑證放入連接字符串? –

+1

你也可以檢查服務器的事件日誌尋找異常 – ivowiblo

回答

3

首先,您必須知道導致錯誤視圖顯示的異常是什麼。

我可以建議你三種選擇。

  1. 關閉<customErrors>部分,所以HandleError過濾器將不能正常工作,你可以看到真正的例外

  2. HandleError過濾器也通過一個HandleErrorInfo實例的錯誤觀點,所以你可以在錯誤視圖本身(只知道錯誤不是在生產一個明智的想法)通過訪問該模型顯示完整的異常。

    @model System.Web.Mvc.HandleErrorInfo 
    
    <p> 
        The exception is: @Model.Exception 
    </p> 
    
  3. 您可以嘗試ELMAH庫,記錄所有未處理的異常。 HandleError過濾器會抑制異常,並通過ELMAH停止記錄,所以當您嘗試使用ELMAH時,最好關閉HandleError。您必須在單獨的數據庫中配置ELMAH,並提供一個列出所有最近錯誤的頁面。

0

檢查以下內容:

  • 你在IIS部署到使用.NET(正確版本的應用程序池應使用.NET 4集成模式的應用程序池)
  • 如果這是一個阻止任何在ASP.NET中運行的錯誤,則應該將錯誤記錄到服務器上的事件日誌中。檢查應用程序和/或系統日誌。
+0

謝謝重播應用程序池配置正確我在事件查看器中出現錯誤:用戶'IIS APPPOOL \ NGG'登錄失敗。原因:無法打開顯式指定的數據庫。 [客戶端:<本地計算機>] –

+0

這聽起來像是對數據庫的權限。如果它是SqlCe類型的文件權限,或者在連接字符串中指定用戶名和密碼(如果它是SQL Server/Express),則爲文件權限。 – Richard

+0

請指教我一件事。我不知道該怎麼做。我怎麼可以谷歌我的問題? –

0

該請求頁面的某些代碼存在一些錯誤。所以ASP.NET MVC顯示了error.cshtml的內容。

您可以在web.config中禁用自定義錯誤頁面,以便您可以在瀏覽器中看到錯誤。請記住,不僅你,每個人都可以看到。因此,一旦找出問題所在,最好將設置更改回來。您也可以將值設置爲remoteonly,以便只有服務器才能看到它。這隻有在您有遠程訪問服務器的情況下才有效。