2011-01-31 95 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

相关问题