带有CDN的PHP缓存标头

时间:2012-09-07 13:08:52

标签: php apache .htaccess cache-control

我正在尝试使用php header()函数将缓存标头设置到我的页面。我有一个缓存http请求的CDN。我想在这里实现的是CDN应该将我的页面缓存2天,浏览器应该每5分钟检查一次CDN的新版本。

Cache-Control: max-age=300, s-maxage=172800, public

此avoe缓存标头是否有效?

2 个答案:

答案 0 :(得分:1)

  

此avoe缓存标头是否有效?

为什么你不知道你的流量?

Manual

s-maxage
   If a response includes an s-maxage directive, then for a shared
   cache (but not for a private cache), the maximum age specified by
   this directive overrides the maximum age specified by either the
   max-age directive or the Expires header.

是的,它应该有效 - 但在客户端上使用比在中间代理上更短的到期时间是没有意义的(除非客户端可能在不同的CDN区域之间移动并且内容是特定于CDN区域的)。

答案 1 :(得分:0)

expires标头是您要查找的标头,它告诉所有缓存相关表示的新鲜时间。在此之后,缓存将始终与源服务器进行核对,以查看文档是否已更改。

此外,如果您的网页未受密码保护,请使用must-revalidate

您可以在CDN使用方法将TTL设置为2天