Har*_*tor 5 caching nginx cache-control cloudflare
我试图让一些html页面被缓存,就像通过CloudFlare自动缓存图像一样,但是我无法让CloudFlare真正点击它的html缓存.
根据文档(参考:https://support.cloudflare.com/hc/en-us/articles/202775670-How-Do-I-Tell-CloudFlare-What-to-Cache-),可以缓存任何内容用一个缓存控制设置为public
与一个max-age
大于0.
我在我的原始Nginx服务器上尝试了各种标头组合但没有成功.从简单Cache-Control: public, max-age=31536000
到复杂的头部包括s-maxage=31536000
,Pragma: public
,ETag: "569ff137-6"
,Expires: Thu, 31 Dec 2037 23:55:55 GMT
没有任何结果.
是否有任何强制CloudFlare从缓存中提供html页面的想法?
PS:我正在获取CF-Cache-Status: HIT
图像,它工作正常,但在HTML页面上没有,甚至没有CF-Cache-Status: something
.使用针对html页面的CloudFlare页面规则,它似乎工作正常,但我想避免使用它,主要是因为它太CloudFlare特定.我不是从这些页面提供cookie或任何动态.
现在可以让Cloudflare尊重您的Web服务器标头,而不是使用浏览器缓存TTL设置中描述的最小值来覆盖它们.
首先导航到Cloudflare仪表板中的"缓存"选项卡:
在这里,您可以向下滚动到"浏览器缓存过期"设置,从这里您可以在下拉列表中选择"尊重现有标题"选项:
进一步阅读:
注意:如果未选择此设置,Cloudflare将至少将默认的4小时应用于Cache-Control标头.设置此设置后,Cloudflare将不会触摸您的Cache-Control标头(即使它们很低或根本没有设置).
归档时间: |
|
查看次数: |
5126 次 |
最近记录: |