簡體   English   中英

ASP.NET MVC3在IIS 7.5中

[英]ASP.NET MVC3 In IIS 7.5

嗨,我想在Windows Server 2008 R2 SP1中發布MVC 3站點。 我安裝了MVC 3和MVC 2.當我創建一個MVC 2站點時,它工作正常,但MVC 3站點不起作用。 我首先安裝了MVC 3,當網站不能正常工作時,我安裝了MVC 2並測試了另一個(MVC 2)網站,一切都還可以。 問題是MVC 3。

任何幫助請問這是錯誤:

錯誤摘要HTTP錯誤403.14 - 禁止Web服務器配置為不列出此目錄的內容。 詳細錯誤信息模塊DirectoryListingModule通知ExecuteRequestHandler處理程序StaticFile錯誤代碼0x00000000請求的URL https://mywebsite.test.own:443 /物理路徑D:\\ WebSite登錄方法匿名登錄用戶匿名最可能的原因:

A default document is not configured for the requested URL, and directory browsing is not enabled on the server.

你可以嘗試的事情:

If you do not want to enable directory browsing, ensure that a default document is configured and that the file exists.
Enable directory browsing using IIS Manager.
    Open IIS Manager.
    In the Features view, double-click Directory Browsing.
    On the Directory Browsing page, in the Actions pane, click Enable.
Verify that the configuration/system.webServer/directoryBrowse@enabled attribute is set to true in the site or application configuration file.

鏈接和更多信息如果未在URL中指定文檔,未為網站或應用程序指定默認文檔,並且未對網站或應用程序啟用目錄列表,則會發生此錯誤。 可以有意禁用此設置以保護服務器的內容。

查看更多信息»

對於IIS 7.5 Windows Server 2008上的ASP.NET MVC 3.0,我發現我必須從C:\\Windows\\Microsoft.NET\\Framework\\<version>文件夾運行aspnet_regiis -i 這解決了這個問題。

看起來請求轉到靜態文件處理程序並且根本沒有進入MVC堆棧。 有些事要檢查......

在配置文件中,您是否在元素上將runAllManagedModulesForAllRequests設置為true?

您是否在為.NET 4和Integrated Pipeline模式配置的應用程序池中運行?

這就是我現在所能想到的,但如果我有其他想法,我會更新帖子。

為了防止這些解決方案對某人不起作用,我遇到了同樣的問題,最后將其追蹤到我的根目錄下的一個文件夾,名稱與一個區域相同。

例如,我有一個名為“Users”的區域,以及我的根目錄下名為相同的文件夾。 所以“domain.com/users”實際上是指向我的根驅動器下的文件夾而不是區域。

希望這有助於某人!

簡短的回答是你需要“Bin Deploy”ASP.NET MVC 3應用程序。

請閱讀Bin使用Razor將ASP.NET MVC 3部署到沒有MVC的Windows Server 另請閱讀使用Visual Studio 2010 SP1閱讀用於MVC 3的Bin部署

我能夠(部分)通過安裝Visual Studio 2010 SP1然后使用Add Dependency Assemblies命令來解決此問題。

我之所以能夠部分解決此問題的原因是因為此解決方案適用於Windows 7上的本地IIS 7.5,但在Windows Server 2008 R2上無法用於IIS 7。 我不確定問題是否仍在繼續或是否是權限問題。 我還沒有機會深入研究它。 失敗的請求跟蹤似乎表明它與以前的問題相同,即403.14。 當我知道更多時,我會更新我的答案。

  1. 右鍵單擊VS 2010中的根項目節點,選擇“Add Deployable Dependencies”,然后選擇:

a)ASP .NET MVC

b)具有Razor語法的ASP .NET網頁

(按確定並發布項目)

  1. web.config的元素“runAllManagedModulesForAllRequests”應為=“true”。 (默認情況下為TRUE)

  2. 在IIS 7.5“基本設置”下,檢查網站是否具有“ASP.NET v4.0”之類的應用程序池

  3. 確保從BIN文件夾下載所有文件。 有時FileZilla卡住......所以,檢查兩次。

我希望這個能幫上忙! :)

我在Server 2008 x64版本上遇到了同樣的問題。 ASP.NET MVC3站點不起作用。 我檢查IIS中的所有內容。 只有在IIS角色中啟用HTTP重定向服務后才能解決該問題。

對於Windows 7,請檢查以下位置: Windows Features -> Internet Information Services -> World Wide Web Services -> Common HTTP features -> HTTP Redirection

當我完全按照教程指南(http://www.asp.net/mvc/tutorials/deployment)部署Microsoft教程應用程序ContsosoUniversity時,我收到此錯誤。 在嘗試了多個帖子的所有建議后,我通過刪除根目錄中的所有其他應用程序(從IIS管理器中)並重新部署應用程序來解決此問題。 DefaultAppPool中的其他應用程序之一(運行它)必定是干擾的。

我的實際問題是我使用了_ViewStart.cshtml_Layout.cshtml文件。 具體來說,我已將_Layout.cshtml文件的名稱更改為_PageLayout.cshtml並在_ViewStart.cshtml修改了對它的_ViewStart.cshtml

這適用於VS2010和運行Windows 7 32位的家用機器,但它在運行Windows 7 64位的工作機器或運行Windows Server 2008 R2的開發服務器上都無法運行。

我的解決方案是現在嘗試更改_Layout.cshtml文件的名稱。

暫無
暫無

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

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