Pau*_*ber 8 caching cdn pagespeed http-headers amazon-cloudfront
我们正在开发一个大型网站,我们所有的图像和资源都在Amazon S3中.我们还使用Cloudfront在全球范围内分发我们的内容.我们想要的是告诉客户端Web浏览器缓存我们的文件,因为当我们更改它们时,我们也会更改URL(Cloudfront不反映其他地方24小时的更改).
我们目前正在使用ETag,但这并不是最佳的,因为客户端仍然必须执行请求以检查资源是否已更改.
一个解决方案是Expires Header,但我们没有找到一种方法来设置它相对于当前日期,就像在Apache Configuration for S3中那样,我们无法定期更新所有内容,因为它非常多.因此,我们需要一个配置选项,将Expires Header设置为相对于所有Content的当前日期的Date.
另一种解决方案是将Cache-Control:max-age设置为某个值.这有用吗?它是否被主要的浏览器接受?我会破坏一些缓存算法吗?为什么YSlow建议设置Expires标头而不是Cache-Control:max-age?
任何其他建议书?我们正在压缩CSS和JS,使用精确的Sprites,在可能的地方设置Expires头和ETag,并且很快将使用Yahoo压缩工具和gzipping输出压缩我们的图像.
我们自己做了一些研究。似乎 Cache-Control 标头确实有助于告诉 Cloudfront 或代理设置有效的 Expires 标头,但只是有时......
我们目前正在编写一个 Cron Job 来定期更新 S3 中的所有标头,因为这是肯定有效的一件事。看来也没有其他办法了。如果有的话我会及时通知您。
| 归档时间: |
|
| 查看次数: |
6191 次 |
| 最近记录: |