我的expours,cache-control和pragma HTTP请求头字段应该设置为什么?

时间:2010-09-28 22:17:49

标签: php http-headers httpresponse

我有一个网站,我每月大约更新一次内容。当我检查HTTP请求头字段时,我得到以下输出:

Expires: Thu, 19 Nov 1981 08:52:00 GMT  
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0   
Pragma: no-cache

我的问题是,考虑到我更新内容的频率,我正在考虑手动设置这些字段以允许缓存网站。我正在使用php header();命令这样做。

因此,我的问题是:我的expours,cache-control和pragma HTTP请求头字段应该设置为什么?另外,我应该设置除此之外的任何其他字段吗?

2 个答案:

答案 0 :(得分:1)

您可以考虑使用ETAG - http://en.wikipedia.org/wiki/HTTP_ETag

答案 1 :(得分:0)

您的Expires标头应该是将来内容过期的日期,并且将强制缓存再次获取它。

摆脱Pragma标题

对于Cache-Control,您可以添加: public max-age = 2592000

假设您希望将其缓存30秒。

为了获得更好的控制,你应该遵循hafichuk的建议并使用ETag。

有关缓存标头的参考,请查看Headers