最近我有点痴迷于页面速度优化,我想知道CMS缓存机制(例如Joomla缓存),Gzip压缩和Cloudflare能完美地协同工作吗?
我了解每个系统是如何独立工作的(或多或少),但我不明白它们是否会协同工作。是否建议一次使用所有这些工具?
如果我使用cloudflare,CMS缓存和Gzip有关系吗?
附注:你还使用其他什么工具?
发布于 2013-06-28 19:01:24
CMS缓存机制(例如Joomla缓存)、Gzip压缩和Cloudflare能完美地协同工作吗?
是的,而且它们做的事情都略有不同。
Cloudflare缓存静态内容,例如图像和样式表。每个页面上的每个访问者仍然下载新的页面HTML。
Cloudflare Gzip压缩在Cloudflare和您的服务器上都发挥了作用。默认情况下,没有通过Cloudflare传递的文件可以由您的服务器Caching and gzip compression by htaccess压缩,不过由于您使用的是Joomla,启用此功能的最简单方法是
控制面板>系统>全局配置>服务器> Gzip页面压缩。
这将减少页面HTML和Joomla生成的动态内容的下载时间。
使用Joomla缓存通常会减少页面加载时间,因为Joomla不会使用模块和插件来为每个访问者每次重新计算动态页面内容,它只会使用保存的缓存内容。你可以通过页面,模块或者插件,here's one good explanation of the differences来缓存Joomla的内容。
值得花一些时间测试像WebPageTest这样的工具,为您的特定站点找到最佳的Joomla缓存选项。有时,我用它节省了大量的费用。
这是有意义的,让所有3个工作在您的网站,这将减少服务器的负载,并加快页面显示。
祝好运!
发布于 2017-03-30 22:13:36
只是提个醒。如果您在使用cloudfare时启用了gzip,则某些浏览器中的某些内容可能会遇到字节范围请求问题。
例如,根据服务器的不同,Safari将(很可能)不会播放通过支持cloudfare和gzip的服务器提供的mp4视频。Gzip可能会干扰请求的字节范围分离。
我以前遇到过这个问题,我想我应该分享一下,以防有人遇到这些问题。
如果您想启用gzip,但遇到某些文件的问题,您可以在.htaccess中为这些特定文件禁用gzip,方法是添加以下内容:
<IfModule mod_headers.c>
<FilesMatch "\.mp4$">
RewriteRule ^(.*)$ $1 [NS,E=no-gzip:1,E=dont-vary:1]
</FilesMatch>
如果出现任何其他问题,只需将.mp4替换为文件类型即可。
https://stackoverflow.com/questions/17075542
复制相似问题