2010年11月12日 星期五

[PHP] cache禁止瀏覽器快取網頁 No Cache

資料來源:http://dorothycode.blogspot.com/2010/10/php-cache-no-cache.html

[PHP] cache禁止瀏覽器快取網頁 No Cache
避免proxy或bowser cache住你的網頁。(如此的話使用者看到的都會是舊的畫面)

HTML Meta Tag:
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="pragma" content="no-cache"> 舊式寫法,加是為了相容性。
<meta http-equiv="expires" content="0"> 將網頁設做立即過期。
In PHP:
<?php
// Expires in the past
header("Expires: Mon, 26 Jul 1990 05:00:00 GMT");
// Always modified
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
// HTTP/1.1
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
// HTTP/1.0
header("Pragma: no-cache");
?>

2 則留言:

彥仔 提到...

如果已經在網頁上設定no-cache在proxy這邊,是會做些什麼動作。
因為no-cache是在head裡面寫的。那proxy在跟web server做溝通時,是不是第一會先確定http 1.0 or http 1.1 200 ok之後再去head裡面看meta,如果meta有設定no-cache那,是不是proxy就會停止cache任何東西的動作,還是部份東西還是會cache,小弟有很大的不解,請大大指點一下,謝謝!

Gary 提到...

這篇文章或許對你有幫助^^
http://support.microsoft.com/kb/234067/en-us