2011-02-10 56 views
0

將ASP.NET MVC 2 Web應用程序發佈到我的學校IIS 7.5服務器後,如果嘗試調用路由(例如/首頁/關於/索引ASP.NET MVC 2路由錯誤

我甚至嘗試發佈默認的ASP.NET MVC 2示例應用程序,但沒有運氣。看起來Web服務器沒有選擇任何路由,並且它將/ Home/About/Index確定爲目錄查找。有沒有人遇到類似的問題?

我與系統管理員交談過,並驗證是否啓用了HTTP重定向和HTTP錯誤。在探討之後,我看到了一些關於路由不起作用的評論,因爲發佈位置不是webroot。任何意見爲什麼?

目前系統管理員具有以下網站目錄結構。這可能是問題嗎?

  • 默認Web站點
    • Fall2010
      • Class123
      • Class321
    • Spring2011

我一直在努力從系統管理員的幫助,我的教授,但都是陌生的無線th MVC和路由。任何幫助表示讚賞。

當然,我可以放棄我的想法,只是使用Web Forms和SOAP,就像我在其他類中所做的那樣,但我想了解更多關於ASP.NET和REST中的MVC的知識。謝謝您的幫助!

+1

也許... http://stackoverflow.com/questions/2374957/asp-net-mvc-on-iis-7-5 – dotjoe

+0

謝謝,但我已經看過。我讓系統管理員嘗試在那裏發佈的解決方案,但它沒有奏效。我還創建了一個default.aspx頁面,但它已成功呈現。 – whall

+0

[無法運行ASP的可能的重複。NET MVC 2 Web應用程序在IIS 7.5上](http://stackoverflow.com/questions/2659544/cant-run-asp-net-mvc-2-web-app-on-iis-7-5) – bzlm

回答

2

所以它看起來像系統管理員不得不將應用程序池,以經典的模式時,它需要集成。在默認ASP.NET MVC 2示例應用程序我修改在Global.asax到:

routes.MapRoute(
    "Default", 
    "{controller}.aspx/{action}/{id}", 
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
); 

並導航到/Home.aspx/About,一切運行良好。

現在我只需要說服我們的系統管理員更改爲集成。

參考文獻:http://server.dzone.com/news/routes-iis-classic-and

編輯:我能夠獲得系統管理員切換到集成。一切似乎工作正常。

1

如果您使用默認路由,則正確的url應該是/Home/About。就在II 7上部署ASP.NET MVC應用程序而言,您可能想要通過following blog post