Iis-7

轉移到虛擬目錄後網站無法載入

  • January 30, 2015

我有一個現在執行良好的網站。網站文件的位置(在我的伺服器中)位於

C:\Hosting Spaces\admin\www.mysite.com

它可以通過來自http://app.mysite.com的 URL 訪問

現在我們正在改造整個網站,但仍希望使用者訪問舊網站。所以我們把內容從

C:\Hosting Spaces\admin\www.mysite.com to C:\Hosting Spaces\admin\2014.mysite.com 

並使其可通過虛擬目錄訪問。我將虛擬目錄的別名配置為 2014,因此該站點應該可以通過轉到http://app.mysite.com/2014和物理路徑來訪問,當然,C:\Hosting Spaces\admin\2014.mysite.com . 我將連接設置為應用程序使用者(通過身份驗證),但是當我想測試連接時,出現以下問題。無論如何,我只需點擊確定。

授權問題

現在我無法通過http://app.mysite.com/2014訪問虛擬目錄,因為它會一直顯示

500 - Internal server error.
There is a problem with the resource you are looking for, and it cannot be displayed.

請幫忙!

更新:另一個資訊,如果我嘗試使用伺服器自己的 IE 訪問該站點,它會返回一個更具描述性的錯誤,如下所示:

有關錯誤的更多資訊

所以我試圖從我的 web.config 中刪除紅線,但它只是繼續在其他行顯示錯誤。我想如果我刪除所有行,我的網站將無法正常工作

對於第一個問題,您需要確保應用程序池身份和任何模擬身份都具有對站點文件的讀取權限。

對於第二個問題,您需要記住,web.config虛擬目錄中的文件繼承自父目錄(包括根站點)中的配置文件。有些設置可以覆蓋根配置中的設置,有些則不能。如果你想要和 root 一樣的 config,你可以刪除虛擬目錄中的 config。如果要將其保留在虛擬目錄中,則可能需要禁用配置繼承。有關此資訊,請參閱此 SO 文章:https ://stackoverflow.com/questions/782252/avoid-web-config-inheritance-in-child-web-application-using-inheritinchildapplic 。

引用自:https://serverfault.com/questions/663610