1. 程式人生 > >IIS7錯誤HTTP 錯誤 404.4

IIS7錯誤HTTP 錯誤 404.4

先貼下錯誤詳情

具體錯誤資訊

錯誤摘要
HTTP 錯誤 404.4 - Not Found
您要查詢的資源沒有與之關聯的處理程式。

詳細錯誤資訊
模組 IIS Web Core
通知 MapRequestHandler
處理程式 尚未確定
錯誤程式碼 0x80070002

請求的 URL http://localhost:80/
物理路徑 D:/Project/IISRoot/Website
登入方法 匿名
登入使用者 匿名

最可能的原因:
所請求 URL 的副檔名沒有配置處理程式來處理 Web 伺服器上的請求。

可嘗試的操作:
如果副檔名沒有與之關聯的處理程式,請為該副檔名新增一個處理程式對映。
確認已正確安裝和配置了與副檔名相關聯的處理程式。
建立跟蹤規則以跟蹤此 HTTP 狀態程式碼的失敗請求。有關為失敗的請求建立跟蹤規則的詳細資訊,請單擊此處。

連結和更多資訊

訪問這個網站目錄下的測試程式default.aspx通過這個地址http://localhost/default.aspx可以正常訪問,我現在想瀏覽虛擬目錄

通過http://localhost訪問出錯 就會出現上面的錯誤,我已經把iis中的目錄瀏覽功能開啟這個錯誤依舊。

http錯誤原因及解決方案可以。。。。以前看到過在微軟頁面中有個所有iis7錯誤描述個解決辦法,現在找不到了,等找到再帖上來。

首先說明基本情況,系統是vista ultimate 版,(iis7已正常安裝,asp,asp.net,安裝時該選的都選了,有些不知道功能的也選了。。)在iis系統目錄c:/windows/system32/intersrv/下可以找到static.dll檔案,在作業系統版本上,如果系統是vista home basic的話,配置iis7也會有此http錯誤

404,這種情況就是不能解決的了,必須更換系統版本,因為vista home basic功能比較少受限制,無法使用iis7.ultimate就不是這種情況了

其次,上面說到微軟有http錯誤的解決方案,我參照http錯誤404.4的解決方案如下

要解決此問題,新增為副檔名,所請求的 URL 處理程式對映。 請按照是例如下列步驟如果想要新增 StaticFile 處理程式對映操作:

  1. 啟動 IIS 管理器。 為此,單擊 開始 ,單擊 執行 ,鍵入 inetmgr.exe ,然後單擊 確定
  2. 在 IIS 管理器中,展開 server name 展開 Web 站點 ,單擊要修改的網站。
  3. 功能的檢視
    ,雙擊 處理程式對映
  4. 處理程式對映 窗格中右鍵單擊 StaticFile 的處理程式對映,然後單擊 編輯
  5. 編輯模組對映 對話方塊鍵入 * 請求路徑 框,然後單擊 確定

請注意 按照這些步驟後,您可以成功地訪問靜態檔案。 是例如,您可以成功地訪問具有以下副檔名的檔案:

  • .htm
  • .html
  • .jpg
  • .gif
  • .png
回到頂端  對於通知MapRequestHandler  搜尋了下能是處理對映或者過濾器的問題,按網上搜索的新增這種那種的過濾都不行。 實際上並不是我的情況,在我開啟自己的處理程式影射中根本就沒有staticfile這個模組。 好現在問題有個方向,我的iis7缺少staticfile那就從staticfile模組入手,網上搜索了下其中有個forums.foiis.net的網站中有個帖子提到手動新增staticfile模組.OK.那現在參照別人的配置手動新增此模組。1》在處理程式對映中參照別人的如下

請求路徑:

*

模組:

StaticFileModule,DefaultDocumentModule,DirectoryListingModule

名稱

StaticFile

請求限制:

檔案或資料夾

按照這個新增之後,發現我的還是比較特殊根本就不識別staticfile模組,無奈此方案流產。

2》修改配置檔案:c:/windows/system32/intersrv/config/applicationhost.config檔案,正常情況下該配置檔案包含2個staticfile節點

我的裡面沒有這2個,這裡也參照別人的培植修改,找到<staticfile>模組就添上去然後儲存。

現在再來瀏覽http://localhost 暈,又給我來個http錯誤500.21這下好了,和上面方法一樣乾脆提示錯誤:不可識別模組staticfile。。。現在再瀏覽http://localhost/default.aspx這個也不行,好了這個方案也流產了。

其他亂78糟的方法也試過不過都不行,最後無奈之下完全解除安裝vs2008,sql2008,iis7,然後先裝iis7靠裝完就可以使用了,他孃的問題在這,那個怒呀!靠微軟也真是,你自家的產品還不相容,不相容也就罷了,還給個不相關的錯誤提示,不相關的也就罷了,還把解決問題方向拉到錯誤的方向,真惱火!

總之根本原因:iis7和.net安裝順序錯誤導致,先裝vs再裝iis就會有此問題。先裝iis7再裝vs就沒問題。血的教訓

另外sql2008和vs2008的安裝順序也有可能導致莫名其妙的錯誤。。。