我已將我們公司的Web應用程序從Windows Server 2003遷移到Windows Server 2008 R2。這些都是.Net 2.0經典網絡應用程序。他們似乎都做工精細,訪問任何資源時與路徑開始/報告/ ...除外Windows Server 2008 R2 + IIS 7.5 - 無法找到資源
在一個應用程序在磁盤上的物理路徑是C:\網站\ APP_NAME \ web服務\報表...在此報告文件夾PDF文件是動態生成的並寫入磁盤。他們可以通過這樣的URL訪問:
http://domain_name/Reports/xxxx.pdf
其中/ Reports是映射到上述物理路徑的虛擬目錄。這工作正常2003服務器& IIS6但在IIS7.5 & 2008 R2我不斷收到以下錯誤:
該資源找不到。
說明: HTTP 404.您正在查找的資源(或其某個依賴項)可能已被刪除,名稱已更改或暫時不可用。請檢查以下網址並確保它拼寫正確。
請求的URL: /Reports/xxxx.pdf
我有一個動態生成的報告,並直接流他們到客戶端瀏覽器保存到本地磁盤,而不是被寫入到磁盤上的另一個Web應用程序在服務器上。類似於上述示例,生成該報告的頁面是根據路徑發現如下:
/Reports/Viewer.aspx
在這種情況下,存在沒有使用虛擬目錄。在瀏覽器中引用的網址是:
http://another_domain_name//Reports/Viewer.aspx
我再次得到了同樣的錯誤信息如上... HTTP 404 - 資源無法找到。
我已經嘗試了所有在陽光下的權限設置,試圖讓它工作,但無濟於事。我已經使用內置帳戶,創建了具有非常小權限和完全管理權限的新帳戶。我也玩過新的AppPool身份,但沒有成功。似乎沒有關係我在目錄上專門設置了什麼權限,或者爲應用程序池配置的帳戶或每個網站本身的基本設置。
雖然我發現了一件事,但是,雖然瀏覽器正在收到HTTP 404錯誤,但沒有在每個網站的IIS日誌文件中出現此請求的記錄!這真讓我感到困惑,因爲我一定會在所請求的資源上看到404日誌條目失敗。
還有其他需要注意的是,我正在該機器上運行SQL Server 2008 Enterprise,並安裝並啓用了Reporting Services。這是一個延伸,但是我的網站上的/ Reports路徑與機器上運行的其他東西有衝突嗎?我爲服務器上運行的每個單獨的域和網站使用不同的綁定/主機頭。
是否啓用在IIS失敗請求日誌記錄?再看看,你說的是沒有任何請求觸及該服務器的痕跡?如果您「停止」該服務器上的網站,您是否不再獲得404,而只是發生連接錯誤? – CodingGorilla