2015-01-16 54 views
1

我見過很多類似的情況發佈在這裏,但沒有一個完全符合我的,不幸的是,其中沒有任何答案解決了我的問題。所以,這裏什麼也沒有。ASP.NET 7.5 404找不到ASP.NET MVC應用程序

對於初學者,我的新MVC前端和WebAPI項目在通過Visual Studio在本地PC上運行時工作得很好。問題是當我嘗試發佈項目(使用多種方法:msdeploy,ftp,文件系統複製到服務器)到登臺服務器。我知道服務器配置正確,因爲我有幾個其他WebUI(MVC)/ WebAPI應用程序運行在同一臺服務器上,使用完全相同的技術堆棧(直到版本)以完全相同的方式部署。以下是我試過到目前爲止:

  • 我已驗證的應用程序部署到服務器上正確的文件夾和虛擬路徑 - >在IIS應用程序指向正確的物理位置
  • 我已驗證應用程序設置爲使用應用程序中的應用程序身份在運行於asp.net 4.0集成模式下的專用應用程序池
  • 應用程序池的IUSR用戶和身份已被授予對虛擬路徑的讀取/執行訪問權限,所有子文件夾/文件
  • 我已經嘗試了我在這裏看到的有關使用verb =「*」的提議Web.config文件中的ExtensionlessUrlHandler-Integrated-4.0處理程序,但它不起作用
  • IIS日誌將404錯誤顯示爲404 0 0 62;仰視的win32狀態代碼(62)規定:「空間來存儲文件等待打印不可用在服務器上」,這似乎並不適用於我的情況(檢索here

下面是一個(節錄)在IIS日誌文件中的副本輸出:

2015-01-16 17:54:59 X.X.X.X GET /Accounts/Alpha/ - 443 - X.X.X.X Mozilla/5.0+(Windows+NT+6.1;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/39.0.2171.95+Safari/537.36 - 404 0 0 62 

這是發生我是否嘗試訪問通過服務器本身的URL(FQDN嘗試和本地主機)或我的機器。與IIS相關的計算機上的事件日誌中沒有錯誤。如果任何人都可以提供一些額外的見解,我將非常感謝它,因爲這讓我感覺很不舒服。我不明白它如何可以爲服務器上的所有其他應用程序工作,但我可以在配置中找到任何區別。

提前致謝!

+0

是MVC4還是MVC5應用程序?您的虛擬目錄被標記爲充當應用程序?在你的文件夾的根目錄下放置一個簡單的html文件,並查看該頁面是否可訪問。 –

+0

MVC4,當我到達工作時,我會稍微確認HTML文件的可訪問性 – David

+0

是的,它是一個虛擬目錄,其子目錄被標記爲應用程序。有趣的是,HTML文件在完全刪除並重新創建目錄結構後似乎無法訪問。 @ImranBalouch如果你發佈的答案我會標記爲這樣。 – David

回答

0

試圖把html文件的目錄和訪問它,如果它不能被訪問超過一定有您的部署設置或IIS的任何問題,嘗試通過重新創建目錄結構:)我希望它會有所幫助。

+0

謝謝!出於某種原因,安全性被搞砸了,所以我完全刪除並重新創建了目錄結構,現在它正在工作。 – David

0

這已經咬了我幾次。

<system.webServer> 
    ..... 
    <modules runAllManagedModulesForAllRequests="true" /> 
    ..... 
</system.webServer> 
+0

感謝您的建議,但沒有任何區別。仍然收到相同的錯誤。 – David

0

也許你可以試試

<system.webServer> 
    <modules runAllManagedModulesForAllRequests="true"> 
     <remove name="BundleModule" /> 
     <add name="BundleModule" type="System.Web.Optimization.BundleModule" /> 
    </modules> 
</system.webServer> 
+0

不幸的是仍然收到404錯誤。 – David

+0

該網站是否具有綁定端口80在IIS中,或者它只是443? – Mike

+0

這只是443,而SSL證書是有效的 – David