2009-07-09 80 views
2

我曾經相信MVC應用程序是BIN可部署的,因此可以部署到任何與ASP.net 3.5兼容的服務器。我試圖部署到3.5(無SP1)的Windows Server 2003 x64,並且無法正常工作。MVC可以在3.5 IIS6上運行嗎? NON SP1

由於我們的應用程序配置,當點擊首頁時,由於我們的應用程序配置重定向到/帳戶/登錄視圖,我得到以下內容。

該頁無法找到

我有三個(加上擴展,我不記得爲什麼)MVC DLL的一套複製本地,所以他們在bin結束-夾。我出版,然後複製在應用服務器:

  • System.Web.Abstractions.dll
  • System.Web.Mvc.dll程序
  • System.Web.Routing.dll
  • System.Web.Extensions.dll

有誰知道我在做什麼錯?該應用程序在3.5 SP1的另一臺機器上運行,並在開發機器上安裝SP1,並安裝了MVC。

我已經看了所有我能想到的,保證了權限是否正確等

回答

2

您是否在不起作用的服務器上設置了通配符映射?以"Deploying ASP.NET MVC to IIS 6"爲例。您基本上需要將所有請求映射到ASP.NET ISAPI DLL,並告訴IIS不要嘗試驗證文件是否存在。不知道這是否是你的問題,但它已經在部署中咬了幾次。

5

IIS 6不能正確處理.mvc擴展。除其他外,您必須將.mvc映射到ASP.NET處理程序。以下是您的演練:http://haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx

+0

我們沒有使用擴展程序,既沒有使用擴展程序,也沒有安裝MVC(SP1),所以我不希望對環境做任何更改?我不確定我能否在我們的生產環境中進行IIS更改。 – Amethi 2009-07-09 09:57:38

+0

您不必安裝MVC,但必須部署MVC程序集。如果你不能對IIS進行更改,恐怕你會遇到麻煩。 – 2009-07-09 10:45:22

+0

當然,雖然我已經部署了這些程序集,但它不能在非sp1機器上運行,但它在sp1機器上運行,並且沒有IIS更改。這是我感到困惑的部分。 – Amethi 2009-07-09 13:40:21

0

使用IIS6,您不能執行無擴展名的URL,例如/Account/LogOn。你必須做一些像/Account.aspx/LogOn這樣的「.aspx」幾乎可以是任意的擴展名,但是你需要這個擴展名。您的路線也需要考慮延期。

0

檢查以確保您的網站正在運行的應用程序池已配置爲運行ASP .Net 2.0,有時它默認爲1.1,這會導致類似於您的問題。

相關問題