Windows-Server-2008

在 IIS7 中將 .NET Framework 版本更改為 4.0 後出現 500 內部伺服器錯誤

  • December 7, 2012

我剛剛在 IIS7 管理器中更改了應用程序池的 .NET Framework 版本,遵循 Microsoft Technet為應用程序池 (IIS 7) 指定 .NET Framework 版本的說明。現在,當我嘗試重新上傳我的 ASP.NET 頁面時,它會顯示 500 - Internal server error。我嘗試在 .NET 2.0(x86、x64、AnyCPU)和 4.0(x86、x64、AnyCPU)中上傳它,但一切都給出了相同的錯誤。這是錯誤給我的所有詳細資訊:“您要查找的資源有問題,無法顯示。”

在伺服器上保留 .NET 2.0 版時,它工作得很好。此外,在上傳時index.htm,它也可以正常工作,它只顯示 HTML 頁面。

順便說一下,這是在 Windows Server 2008 R2 上。

編輯:

我終於找到瞭如何獲取錯誤詳細資訊。它們是:

處理程序在其模組列表中"PageHandlerFactory-Integrated"有一個壞模組。"ManagedPipelineHandler"最可能的原因:

  • 使用託管處理程序;但是,ASP.NET 未安裝或未完全安裝。
  • 處理程序模組列表的配置中存在印刷錯誤。你可以嘗試的事情:
  • 如果您使用託管處理程序,請安裝 ASP.NET。
  • 確保正確指定處理程序模組的名稱。模組名稱區分大小寫並使用格式modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule"

我確信我已經完全安裝了 ASP.NET。

我找到了解決方案。顯然,它沒有註冊我的 .NET 4.0 安裝。我只需要使用參數執行這個程序:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i",它就修復了它!

請注意,路徑"C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe"可能會根據安裝的 .NET 框架版本而有所不同!

要查看您需要的路徑,請打開"C:\Windows\Microsoft.NET\Framework\"並查看文件夾名稱,然後進行相應調整,如下所示:"C:\Windows\Microsoft.NET\Framework\<version>\aspnet_regiis.exe"

引用自:https://serverfault.com/questions/177818