When Internet Explorer downloads and caches content, if the
server has specified an expiration time for the content, Internet Explorer
should not send "If-Modified-Since" GET requests to the server to check for
content updates until after the expiration date and time have been reached
(which is indicated in the expiration header). Internet Explorer should only
send an "If-Modified-Since" GET request to check with the server if the content
is expired. However, with MSXML.dll (and thus with .xml and .xsl files), an
unnecessary "If-Modified-Since" GET request is sent even if the .xml or .xsl
file has not expired.
If all the files are loaded in the cache
because of a previous visit to the site, and if the files have not expired,
this bug can be observed in several different circumstances:
- When you click Back to browse to a previously visited XML document, Internet Explorer
sends an "If-Modified-Since" header to the server to check the status of the
XML file.
- When you type the URL in the Address bar to an XML document
that is linked to a XSL style sheet, Internet Explorer sends an
"If-Modified-Since" header for the XSL document but not the XML
document.
- When you call the load method of the XML DOMDocument object to load an XML document through script, Internet Explorer
sends an "If-Modified-Since" header for the XML file.
- When you use the XML data island in an ASP or HTML page, if
you click the URL or press the BACK button to access the page, Internet
Explorer sends an "If-Modified-Since" GET request to the server for the XML
file.
Perform the steps in the Resolution section to resolve the
first two issues.
For more information about how to
resolve the third issue, click the following article number to view the article
in the Microsoft Knowledge Base:
308603
The DomDocument Load method ignores content expiration
At this time, there is no resolution for the fourth
issue.