2009-04-14 44 views
1

URL是在這裏:http://www.thexsoft.com/DownloadFolder/download.php?file=P2PTransferHTML/PHP頁面被緩存(客戶端)時,它不應該是

本頁面基本上是我有設置網址下載一個特定的問題,我出版了一本辦法。這個頁面永遠不會被緩存,但它似乎仍然是緩存。

我已經設置了以下項目:

<meta http-equiv="expires" content="0" > 
<meta http-equiv="cache-control" content="no-cache" > 
<meta http-equiv="pragma" content="no-cache" > 
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" > 

在網頁的HTML代碼驗證100%時,我沒有在fastclick.net廣告代碼,但我keept它在現在,因爲它通常

回答

2

我使用Firebug檢查您的標題:

Cache-Control: max-age=1209600 
Expires: Tue, 28 Apr 2009 18:49:15 GMT 

在PHP中,您可以發送HTTP標頭與header()

header('Pragma: no-cache'); 
header('Expires: -1'); 
header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 
5

Pragma:no-cache僅在通過安全連接(https)使用時防止緩存。 Pragma:no-cache META標籤的處理方式與Expires:-1的處理方式相同,如果在非安全頁面中使用。該頁面將被緩存但標記爲立即過期。

http://support.microsoft.com/kb/234067

<META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
<META HTTP-EQUIV="Expires" CONTENT="-1"> 
+0

這個技巧是否適用於頁面上的CSS? – Strae 2009-04-14 16:05:32

+0

我相信你對於「pragma:no-cache」的錯誤只是爲了防止HTTPS連接緩存,除非你在談論某些瀏覽器的某些特定版本的行爲。 – Eddie 2009-04-14 16:14:18

2

是,在某些情況下,瀏覽器緩存積極,特別是IE6。您需要檢查您的服務器發送的http標題,如果不是這個問題,請嘗試使用cachebusting URL(插入隨機/基於時間的獲取變量),以使瀏覽器認爲它是一個新的URL。