2011-01-31 51 views
1

我注意到,谷歌的HTML到期設置爲一個過去的日期:.htaccess - 如何在過去設置到期日期?

Expires Thu Jan 01 1970 00:00:00 

如何配置的.htaccess做到這一點?我使用ExpiresByType來設置我的其他資源到期,但它們都是未來時間(例如access plus 10 years)。有關如何設置過去的建議?謝謝。

回答

3

通過設置HTML過期到過去,我假設你試圖阻止你的HTML被緩存。不幸的是,你不能使用Expires指令,因爲它只適用於將來的日期。您可以使用頭文件命令來控制HTML文件的緩存方式。

<FilesMatch "\.(html|htm)$"> 
FileETag None 
Header unset ETag 
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate" 
Header set Pragma "no-cache" 
Header set Expires "Thu, 01 Jan 1970 00:00:00 GMT" 
</FilesMatch> 

mod_headers模塊將需要安裝Apache中使用這種方法。

編輯:或者,如果您使用PHP,您可以使用PHP的header函數設置這些標頭。

header("Cache-Control: max-age=0, no-cache, no-store, must-revalidate"); 
header("Pragma: no-cache"); 
header("Expires: Thu, 01 Jan 1970 00:00:00 GMT"); 
+0

這正是我想要做的。如果我的HTML文件正在從PHP提供服務會怎麼樣?我是否嘗試使用FilesMatch「\ .php $」來代替?而如果URL有查詢字符串呢? $符號將導致不匹配。建議? – StackOverflowNewbie 2011-01-31 21:42:07

相關問題