Platform SDK: IIS SDK |
The CacheControl property enables you to set the HTTP/1.1 Cache Control header in Response.Syntax
The values for CacheControl are strings, and must be enclosed in quotation marks (" "). You must set CacheControl before any response is sent to the client, unless response buffering is enabled.
Response.CacheControl [= Cache Control Header ]
Value | Description |
---|---|
|
|
|
|
|
|
|
|
Between your Web server and a user requesting your page, there may be proxy servers configured to cache Web pages for faster response times. Usually ASP pages are developed to be unique for each user or may contain secure information. For this reason, IIS sets this property to "Private" so that proxy servers or other cache mechanisms will not cache pages. You can override this default value, setting it to any value supported by the HTTP/1.1 protocol. For more information, see the Hypertext Transfer Protocol, HTTP/1.1 specification of section 14.9 on the World Wide Web Consortium Web site.
If there is no cache mechanism between your Web server and a client computer, or if a proxy server is running HTTP/1.0, CacheControl will be ignored.
Setting CacheControl to "Public" may seem to improve the performance of your .asp files, but it is discouraged if you generate custom HTML for every request, and a proxy server might interfere with the response.
CacheControl comes before the <HTML> tag to ensure that it is set before content is sent to the client.
--- CacheControl_NoBuffer.asp ---
<%
Response.Buffer =index.html False
Response.CacheControl = "private"
%>
<HTML><HEAD><TITLE>Response.CacheControl Example</TITLE></HEAD>
<BODY>
Output from this page is sent to the client as it is being processed.<BR>
It will not be cached.<BR>
Today is <%= Date %>, <%= Time %><BR>
<H3>Please enter your credit card number:</H3>
<FORM NAME="Order" METHOD="POST" ACTION="order.asp ">
<INPUT TYPE="TEXT" NAME="CreditCard">
<INPUT TYPE="SUBMIT" VALUE="Submit" NAME="Submit">
</FORM>
</BODY>
</HTML>
--- CacheControl_Buffer.asp ---
<% Response.Buffer =index.html True %>
<HTML><HEAD><TITLE>Response.CacheControl Example</TITLE></HEAD>
<BODY>
Output from this page is sent to the client once it is completely processed by the server, so we can set CacheControl anytime.<BR>
<% Response.CacheControl = "private" %>
It will not be cached.<BR>
Today is <%= Date %>, <%= Time %><BR>
<H3>Please enter your credit card number:</H3>
<FORM NAME="Order" METHOD="POST" ACTION="order.asp ">
<INPUT TYPE="TEXT" NAME="CreditCard">
<INPUT TYPE="SUBMIT" VALUE="Submit" NAME="Submit">
</FORM>
</BODY>
</HTML>
Platforms: Windows 2000 with IIS 5.0 installed,
Windows XP with IIS 5.1 installed,
Windows Server 2003 family with IIS 6.0 installed
What did you think of this topic? |
Order a Platform SDK CD |