我只是将静态站点从VPS移到了Amazon S3。由于S3并非网络服务器,因此我决定仅提供页面的压缩版本,因此我无法使用基于标题的逻辑。我还将Cloudfront用作CDN。
我正在http://gtmetrix.com/上测试我的页面,但由于未添加,因此记错了vary accept encoding header
。因此,我检查了这是什么意思,据我所知,当我们同时提供压缩版本和未压缩版本时,这才有意义。
因此,我希望您能帮助我澄清这一点。我应该添加它吗?谢谢 :)
我只是将静态站点从VPS移到了Amazon S3。由于S3并非网络服务器,因此我决定仅提供页面的压缩版本,因此我无法使用基于标题的逻辑。我还将Cloudfront用作CDN。
我正在http://gtmetrix.com/上测试我的页面,但由于未添加,因此记错了vary accept encoding header
。因此,我检查了这是什么意思,据我所知,当我们同时提供压缩版本和未压缩版本时,这才有意义。
因此,我希望您能帮助我澄清这一点。我应该添加它吗?谢谢 :)
Answers:
我决定只提供页面的压缩版本
如果你只提供文件,您使用已经被压缩的gzip,然后使用Vary: Accept-Encoding
就没有什么好处,因为不会有投放到不发送用户的文件解压缩副本Accept-Encoding: gzip
的HTTP请求。这些天大多数客户都会发送此邮件,所以您应该没事。
在线网站性能测试不知道您仅提供压缩文件,而且它们也不是万无一失的。例如,您可能会注意到,您使用的服务在标记为的列下列RECOMMENDATION
出了这些建议,因此明智的做法是在关注或尝试实现这些建议之前,先进行一些事实调查(就像您所做的那样)。
Vary: Accept-Encoding
了在原始服务器上使用CDN的情况。正如您指出的那样,您的原始服务器不提供此功能,并且由于Google的要求,它实际上不再需要了:All modern browsers support and automatically negotiate gzip compression for all HTTP requests.
因此,他们建议在所有站点上使用gzip。该文章(自2013These days you're unlikely to have clients without compression, but why risk cache mixups?