我嘗試部署一個簡單的mvc2應用程序。但它不起作用。 我的託管服務提供商是qualityhosting.de,他們支持mvc。Asp.Net MVC2部署
我看到主頁「我的MVC應用程序 - 歡迎使用ASP.NET MVC!」但在點擊「關於」後點擊 (例如)我得到了「無法找到該頁面」。
有人可以幫我嗎?
謝謝!
我嘗試部署一個簡單的mvc2應用程序。但它不起作用。 我的託管服務提供商是qualityhosting.de,他們支持mvc。Asp.Net MVC2部署
我看到主頁「我的MVC應用程序 - 歡迎使用ASP.NET MVC!」但在點擊「關於」後點擊 (例如)我得到了「無法找到該頁面」。
有人可以幫我嗎?
謝謝!
這意味着URL重寫機制不起作用。您應該瞭解您的提供商需要什麼來啓用它們:也許您需要轉到控制面板並啓用某些功能?
謝謝大家,但沒有效果;)我試着改變路線。沒有在管理面板中設置更改網址重寫或類似的東西。我不知道我的提供程序正在運行的是哪個版本的IIS。我寫了一個支持請求。也許他們可以幫助我。其他想法? – Denis 2010-10-22 10:25:15
這很可能是因爲您的託管服務提供商未配置爲將擴展少的URL作爲ASP.NET頁面處理。
爲此,您需要檢查您是否可以使用您的託管服務提供商來配置此項,或者您可以選擇更改您的路線,以便在您的路線中包含.aspx(其中當然配置爲使用ASP.NET)擴展名。然而,這使得「默認」多一點棘手,因爲你需要爲所有的「級別」顯式路由,即
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
變爲
routes.MapRoute(
"MainActionId",
"{controller}/{action}/{id}.aspx",
new { controller = "Home" }
);
routes.MapRoute(
"MainAction",
"{controller}/{action}.aspx",
new { controller = "Home" }
);
routes.MapRoute(
"Main",
"{controller}.aspx",
new { controller = "Home", action = "Index" }
);
您可能需要配置IIS使之能得到沒有任何擴展的頁面即添加「。*」作爲擴展名,以下網站可能會幫助http://blog.stevensanderson.com/2008/07/04/options-for-deploying-aspnet-mvc-to-iis-6/ 乾杯!
也許您的託管服務提供商可以幫助您,因爲這不是一個真正的編程相關問題? – 2010-10-22 07:53:55
你知道你的提供者正在運行什麼版本嗎? – 2010-10-22 07:54:22
對不起,我不知道哪個版本在那裏運行。 – Denis 2010-10-22 10:26:04