您目前已離線,請等候您的網際網路重新連線

當您在 IIS 7.0 上造訪裝載的網站時,出現錯誤訊息: 「 HTTP 錯誤 404.11 – URL_DOUBLE_ESCAPED"

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:942076
徵狀
您有裝載在網際網路資訊服務 (IIS) 7.0 的網站。當您造訪網站時,可能會收到類似下列的錯誤訊息:
伺服器錯誤
--------------------------------------------------------------------------------
HTTP 錯誤 404.11 – URL_DOUBLE_ESCAPED
HRESULT: 0
描述 HRESULT # 操作已順利完成。
發生的原因
HTTP 要求到 Web 伺服器包含雙引號的逸出序列。不過,讓 Web 伺服器拒絕雙引號的逸出序列,則設定要求篩選功能。
解決方案
如果要解決這個問題,請依照下列步驟執行。

附註依照這些步驟執行之後,可能會降低執行 IIS 的伺服器的安全性層級。 因此,您將 allowDoubleEscaping 屬性設定為 True 之前考慮涉及的風險。
  1. 按一下 [開始],、 在 開始搜尋] 方塊中輸入 [記事本]程式集] 清單中的 [記事本] 按一下滑鼠右鍵,然後按一下 [以系統管理員身分執行]。 如果出現要求您輸入系統管理員密碼或一個確認的提示,輸入您的密碼,或按一下 [繼續]。
  2. 在 [檔案] 功能表上按一下 [開啟舊檔],並在 [檔案名稱] 方塊中輸入 %windir%\System32\inetsrv\config\applicationHost.config 然後按一下 [開啟舊檔
  3. ApplicationHost.config] 檔案中找出 requestFiltering XML 項目]。
  4. 變更 allowDoubleEscaping 屬性的值設 為 True。如果要執行這項操作,使用類似下列的範例程式碼的程式碼
    <requestFiltering allowDoubleEscaping="true">
  5. 在 [檔案] 功能表上按一下 [儲存]。
  6. 結束 [記事本]。
重要啟用 [雙引號的逸出的序列時可能會降低執行 IIS 的伺服器的安全性層級。

先前的步驟將直接編輯 applicationHost.config 檔,並在伺服器層級設定這項設定。您也可以使用 Appcmd 命令来進行這項設定。要這麼做,請您執行下列步驟:
  1. 按一下 [開始]、 按一下 [執行],並在 [開啟] 方塊中鍵入 cmd
  2. 輸入下列命令並按下 ENTER:
    C: CD %windir%\system32\inetsrv
  3. 執行下列命令其中之一:
    • Appcmd set config "Default Web Site" /section:system.webServer/Security/requestFiltering -allowDoubleEscaping:True
      附註這會設定這個設定只為"預設的網站 」 藉由建立或編輯 Web.config 檔,在根資料夾的 「 預設的網站 」。
    • appcmd set config "Default Web Site" /section:system.webServer/Security/requestFiltering -allowDoubleEscaping:True /commit:appHost
      附註這將 applicationHost.config 檔案中設定這個設定只為"預設的網站 」,藉由使用位置標記。

警告:本文為自動翻譯

內容

文章識別碼:942076 - 最後檢閱時間:11/25/2008 23:18:45 - 修訂: 2.0

Microsoft Internet Information Services 7.0

  • kbmt kbexpertiseadvanced kbtshoot kbprb KB942076 KbMtzh
意見反應
"; var Ctrl = ""; document.write("