注意: 快取的 XML 檔會產生不必要的 GET 要求

文章翻譯 文章翻譯
文章編號: 293099 - 檢視此文章適用的產品。
本文已封存。本文係以「現狀」提供且不會再更新。
全部展開 | 全部摺疊

徵狀

用戶端電腦上快取的可延伸標記語言 」 (XML) 或 「 可延伸樣式表語言 (XSL) 文件後後續的要求使用的檔案可能導致的不必要的"If-修改-自從"GET 要求至伺服器如果檔案尚未過期。 這些額外的要求高調整伺服器及大型的應用程式的效能變慢。

發生的原因

這發生的原因,是因為 Msxml.dll 檔案中的問題。

解決方案

如果要解決這個問題,安裝 Microsoft XML (MSXML) 剖析器版本 3.0 或更新版本和使用 XmlInst.exe] 工具在取代模式下安裝 MSXML 3.0。您在執行在取代模式下安裝 MSXML 3.0 XmlInst.exe 時 (包括為 Internet Explorer 的) 的所有應用程式參考都指向 MSXML 3.0 重新對應。如果您不要在取代模式安裝 MSXML 3.0,Internet Explorer 會繼續使用 MSXML.dll 代替 MSXML3.dll,並持續問題再次發生。

您可以從下列 Microsoft 網站下載 MSXML 剖析器 3.0 版:
http://www.microsoft.com/downloads/details.aspx?FamilyID=8167837e-0983-4988-99a4-377ef5c0da2e&DisplayLang=en
如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
269238Microsoft XML 剖析器的版本清單
您可以從下列 Microsoft 網站下載 Xmlinst.exe 取代模式工具:
http://www.microsoft.com/downloads/details.aspx?FamilyID=1e6185d7-e4e4-43b1-8056-0e5ecd15a88a&DisplayLang=en

狀況說明

Microsoft 已確認這是在 Microsoft 中的錯誤 < 適用於 > 一節中所列出的產品。這個 Bug 已經在 MSXML 剖析器版本 3.0 中獲得修正。

其他相關資訊

Internet Explorer 何時下載及快取內容,如果伺服器已指定為 Internet Explorer 內容到期時間不應該傳送"If-修改-自從"GET 要求給伺服器檢查直到到達到期的日期和時間後更新的內容 (也就指示到期標頭中)。Internet Explorer 應該只傳送來檢查與伺服器,如果內容過期"If-修改-自從"GET 要求。不過,具有 MSXML.dll (以及因此.xml 和.xsl 檔案),不必要的"If-修改-自從"GET 要求會被送即使.xml 或.xsl 檔案尚未過期。

如果因為先前的瀏覽至該網站的所有檔案都載入快取中,而且尚未過期檔案,可以觀察這個 Bug 數個不同的情況下:
  • 當您按一下 [上一步] 以瀏覽至先前瀏覽過的 XML 文件] 時,Internet Explorer 會將"If-修改-自從 」 標頭傳送至伺服器檢查 XML 檔案的狀態。
  • 當您在 [網址] 列到 XML 文件連結至 XSL 樣式表中輸入 URL 時,Internet Explorer 會傳送是"If-修改-自從 」 標頭的 XSL 文件,但不是將 XML 文件。
  • 當您呼叫 XML DOMDocument 物件載入 XML 文件透過指令碼的 [載入] 方法時,Internet Explorer 會傳送 XML 檔案的 「 如果-修改-自從 」 標題。
  • 當您使用 XML 資料島的 ASP] 或 [HTML] 網頁中,如果您按一下 URL,或按下 [按 [上一步] 按鈕,以存取網頁時,Internet Explorer 傳送了"If-修改-自從"GET 要求至伺服器之 XML 檔案。
執行步驟來解決前兩個問題的 < 解決方案 > 一節中。

如需有關如何解決第三個問題的詳細資訊,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
308603DomDocument Load 方法會略過內容的到期限制
這次沒有第四個問題的解決方法。

?考

更多有關 XML DOMDocument 物件的資訊,請參閱下列 Microsoft 網站:
http://msdn.microsoft.com/en-us/library/aa468547.aspx
如需有關 Microsoft Internet Explorer 開發 Web 為基礎的解決方案的詳細資訊,請造訪下列 Microsoft 網站:
http://msdn.microsoft.com/ie/

http://support.microsoft.com/iep

屬性

文章編號: 293099 - 上次校閱: 2014年2月24日 - 版次: 4.1
這篇文章中的資訊適用於:
  • Microsoft Internet Explorer 4.01 Service Pack 1
  • Microsoft Internet Explorer 5.0
  • Microsoft Internet Explorer 5.01
  • Microsoft Internet Explorer (Programming) 5.01 SP1
  • Microsoft Internet Explorer 5.5
  • Microsoft Internet Explorer (Programming) 6.0
  • Microsoft XML Parser 2.0
  • Microsoft XML Parser 2.5
  • Microsoft XML Parser 2.6
關鍵字:?
kbnosurvey kbarchive kbmt kbbug kbfix kbmsxmlnosweep kbnavigation KB293099 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:293099
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com