Microsoft KB Archive/259268

= Microsoft Proxy Server Caching Criteria and Troubleshooting =

Article ID: 259268

Article Last Modified on 1/18/2006

-

APPLIES TO


 * Microsoft Proxy Server 2.0 Standard Edition

-



This article was previously published under Q259268



SUMMARY
This article describes how not to cache an individual Web site. You can use this method to troubleshoot problems specific to a single Web site. This article also provides the caching criteria that Proxy Server 2.0 uses.



How to Not Cache an Individual Web Site

 * 1) Open Internet Service Manager.
 * 2) Right-click Web Proxy Service, and then click Properties.
 * 3) Click the Advanced Cache Policy tab, and then under Cache Filters, select Never Cache for the Web site that you are troubleshooting.

Proxy Server Caching Criteria
A Web object must satisfy the following criteria in order to be cached:  The request must be a GET. There can be no keywords, which are typically used for a basic logon process. The file must be served by Hypertext Transfer Protocol (HTTP). Objects associated with other protocols are not cached. The HTTP response header from the Web server must not include the following:

WWW-Authenticate

Pragma: no-cache

Cache-control: Private

Cache-control: no-cache

Set-Cookie

Note: These options are set on the Web server, and not on the client. The date in the Expires header field must be later than the date in the Date header field. The Expires header is used in all HTTP requests to indicate a date and a time for the request to expire on the network. The Date header is used to indicate the date and the time at which the Web server received the request. Both fields are generically returned in almost all HTTP requests. Some Web servers indicate to downstream caches that a page should not be cached by setting the Expires header equal to the Date header, which indicates that the page expires immediately. Also, setting this field to Expires: 0 prevents caching as well. The HTTP Result code must be 200 (success), and the object must not be encrypted or protected by Secure Sockets Layer (SSL). There cannot be an Authorization header in the HTTP request header, or Vary in the response header.</li> The HTTP header may include cookies, which allow a server to customize a response for a particular user.

Cookies are used for custom pages or for informal (that is, not very secure) authentication. Microsoft Proxy Server treats cookies as another optional HTTP header, which it disregards, with the exception of the Set-Cookie header. It is assumed that subsequent transactions after the cookie has been set can be cached, unless any of the subsequent objects requested include headers with cache-ineligible exception values based on the criteria in the preceding list.</li></ul>

Passive Caching and Active Caching
Proxy Server caches data by means of two different types of caching processes: passive caching and active caching.

Common Items That Do Not Affect Caching
The cache only uses the criteria listed above to decide whether to cache an object. Periodically, an assumption is made that the proxy uses various other criteria such as those listed below:
 * URLs containing the strings &quot;cgi,&quot; &quot;cgi-bin,&quot; and so forth.
 * Active Server Pages (ASP) or other dynamic content.
 * Responses that do not contain a Last-Modified date (an administrator option exists to not cache those, but it is off by default).
 * Requests containing a Cookie header.
 * META tags within Hyper Text Markup Language (HTML). Most Web servers do not promote META tags from the HTML to the HTTP headers.
 * The object type (for example, Adobe Acrobat PDF files).

Keywords: kbinfo kbtshoot kbenv KB259268

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.