The cache of the Web page is controlled by the "Cache-control" in the HTTP message header, and the common values are private, No-cache, Max-age, must-revalidate, etc., and the default is private.
Its function is divided into the following situations according to different ways of re-browsing:
(1) Open a new window
The value is private, No-cache, Must-revalidate, and the server will be re-accessed when a new window is opened.
If you specify a max-age value, the server is not re-accessed in the time within this value, for example:
Cache-control:max-age=5 (indicates that access will not go to the server within 5 seconds of accessing this page)
(2) Enter in the Address bar
A value of private or must-revalidate will only access the server on the first visit and will no longer be accessed at a later time.
The value is No-cache, which is accessed every time.
A value of max-age, the access is not repeated until it expires.
(3) Press Back button
The value is private, must-revalidate, Max-age, and is not re-accessed.
A value of No-cache, which is repeatedly accessed every time
(4) Press the Refresh button
No matter what the value, it will be accessed repeatedly
When the Cache-control value is "No-cache", accessing this page does not leave a page backup in the Temporary Internet Article folder.
Also, the cache is affected by specifying a value of "Expires". For example, specifying the Expires value is a time long past, then when you visit this network repeatedly press ENTER in the Address bar, then each time will be repeated access: Expires:fri, Dec 1999 16:00:00 GMT
For example: Prevent pages from being cached in IE
HTTP response message Header settings:
CacheControl = No-cachepragma=no-cacheexpires =-1
Expires is a good thing, if the Web page on the server changes frequently, it is set to 1, indicating immediate expiration. If a webpage is updated daily 1 o'clock in the morning, you can set expires to 1 o'clock in the morning the next day.
When the HTTP1.1 server specifies CacheControl = No-cache, the browser does not cache the page.
Legacy HTTP 1.0 Servers cannot use the Cache-control header.
So for backwards compatibility with HTTP 1.0 servers, IE uses the Pragma:no-cache header to provide special support for HTTP.
If the client communicates with the server over a secure connection (https://) and the server returns the Pragma:no-cache header in the response,
Internet Explorer does not cache this response. Note: Pragma:no-cache prevents caching only when used in a secure connection, and if used in a non-secure page, is processed in the same way as expires:-1, the page is cached but is marked for immediate expiration
Header Common Directives
The header is divided into three parts:
The first part is the version of the HTTP Protocol (http-version);
The second part is state code (status);
The third part is the reason phrase (reason-phrase).
Fix 404 Pages: Use this header command to resolve the 404 header header (' http/1.1 OK ') generated by the URL rewrite; Set 404 Header: The page did not find the header (' http/1.1 404 Not Found '); The page is permanently deleted and can tell the search engine to update their URLs//set Moved permanently header (good for redrictions)//use with the Location header header (' HTT p/1.1 301 Moved permanently '); Access restricted header (' http/1.1 403 Forbidden '); Server error header (' http/1.1 Internal server error '); Redirect to a new location//redirect to A, new Location:header (' location:http://www.example.org/'); Delay after a period of redirection//redrict with Delay:header (' refresh:10; url=http://www.example.org/'); print ' You'll be redirected in ten seconds '; Overwrite x-powered-by value//override X-powered-by:php:header (' x-powered-by:php/4.4.0′); Header (' x-powered-by:brain/0.6b '); Contents language (en = English)//content language (en = 中文版) header (' Content-language:en '); Last modified time (can be used at cache time)//modified (good for caching) $time = times () –60; or Filemtime ($FN), etc header (' last-modified: '. Gmdate (' d, D M Y h:i:s ', $tIME). ' GMT '); Tell the browser to get the content has not been updated//header for telling the browser that the content/do not get changed header (' http/1.1 304 not Mod Ified '); Set the length of the content (available when cached)://Set Content length (good for Caching): header (' content-length:1234′); Used to download files://Headers for an download:header (' Content-type:application/octet-stream '); Header (' Content-dis; filename= ' Example.zip '); Header (' content-transfer-encoding:binary '); Disable caching of the current document://Load the file to Send:readfile (' example.zip '); Disable caching of the current Document:header (' Cache-control:no-cache, No-store, max-age=0, Must-revalidate '); Header (' Expires:mon, Jul 1997 05:00:00 GMT '); Set Content Type://Date in the Pastheader (' Pragma:no-cache '); Set content Type:header (' content-type:text/html; charset=iso-8859-1′); Header (' content-type:text/html; charset=utf-8′); Header (' Content-type:text/plain '); Plain text file header (' Content-type:image/jpeg '); JPG Picture header (' Content-type:application/zip '); ZIP file header (' Content-type:application/pdf '); PDF file header (' Content-type:audio/mpeg '); Audio MPEG (MP3,...) file header (' Content-type:application/x-shockwave-flash '); Displays the Login dialog box, which can be used for HTTP authentication//Flash animation//show Sign In box header (' http/1.1 401 Unauthorized '); Header (' Www-authenticate:basic realm= ' Top Secret '); print ' Text that would be displayed if the user hits cancel or '; print ' enters wrong login data ';