簡體   English   中英

如何設置IIS6來承載ASP .NET 4 MVC4應用程序

[英]How to set up IIS6 to host ASP .NET 4 MVC4 application

我很難配置服務器來托管MVC4應用程序。 這是我的情況:

  • 我有Windows 2003 Server SP2
  • 到目前為止,我所有托管的應用程序都針對.NET Framework 3.5,因此使用的是ASP .NET2。我使用單個網站托管Web應用程序
  • 現在,我想托管第一個針對ASP .NET 4的應用程序

我所做的是:

  • 我已經安裝了.NET Framework 4
  • 我添加了新的新應用程序池
  • 我已將新的虛擬目錄添加到我的網站(托管ASP .NET 2 Web應用程序的同一網站)並將其轉換為Web應用程序。 接下來,在“ ASP.NET”選項卡上選擇“ ASP.NET版本4”

因此,我認為就足夠了。 但是,當我使用根URL訪問應用程序時,第一件事是403。我檢查了安全選項,它們似乎還不錯。 接下來,我嘗試訪問我的控制器操作之一,例如:

http://servername/home/index

現在我得到404錯誤。 好的,因此我啟用了文件瀏覽功能,並嘗試訪問web.config,以檢查發生了什么,並且收到錯誤消息:

無法加載文件或程序集'System.Core,版本= 2.0.5.0,區域性=中性,PublicKeyToken = 7cec85d7bea7798e,Retargetable =是'或其依賴項之一。 給定的程序集名稱或代碼庫無效。 (來自HRESULT的異常:0x80131047)

我還運行了regiis命令:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis.exe -s W3SVC/2049612577/root/cip-new/

但還是徒勞。 最重要的是,這是錯誤的,但是我不知道發生了什么。

編輯1:

我做了一些測試。 我所做的是,我從基本模板創建了一個基本的MVC4應用程序,然后將其發布到服務器中。 而且有效。 但是,當我將其發布到服務器的同一目錄時,出現錯誤:

應用程序前的啟動初始化方法在類型WebActivator.ActivationManager上運行,引發異常,並顯示以下錯誤消息:無法加載文件或程序集'System.Core,Version = 2.0.5.0,Culture = neutral,PublicKeyToken = 7cec85d7bea7798e,Retargetable = Yes或其依賴項之一。 給定的程序集名稱或代碼庫無效。 (來自HRESULT的異常:0x80131047)。

要使v4在IIS6上運行,我過去必須做的2件事...

  1. 確保使用.Net 4.x版的網站在其自己的應用程序池中運行,並與使用.Net 2.x版的網站分開

  2. 如果您使用的是Razor,我會注意到IIS6不會立即知道該怎么做。 因此,您需要配置應用程序擴展映射。 根據使用C#還是VB,為.cshtml或.vbhtml添加擴展名映射。 我認為這就是為什么您遇到404錯誤的原因。

應用程序擴展映射

如果可以確保更改生效,請重新啟動IIS或回收上面應用的相關應用程序池。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM