- A+
wordpress博客作为当今最受站长欢迎的blog框架,功能完善,主题丰富多样,然而,却感觉太笨重,速度太慢,网页加载时间长,ttfb一直等待响应。针对这一问题,全世界的wordpress爱好者提供了很多好用的加速缓存插件。如:WP Rocket, W3 Total Cache, WP Super Cache, WP Fastest Cache, Comet Cache, 和 Cache Enabler,下面将对这些缓存插件加速效果进行比较,并安装配置最好的缓存插件及其他组合缓存方案。
一、wordpress缓存插件速度比较
在点金主题网上有这些插件的测试报告,这里主要列出最后的测试结果情况,如下表:
在缓存之前 | WP Rocket | W3 Total Cache | WP Super Cache | WP Fastest Cache | Comet Cache | Cache Enabler | |
---|---|---|---|---|---|---|---|
GT Metrix | 1.9秒 | 1.1秒 | 1.5秒 | 1.0秒 | 1.3秒 | 2.1秒 | 0.9秒 |
Pingdom | 1.79秒 | 1.38秒 | 1.43秒 | 0.98秒 | 0.91秒 | 1.55秒 | 0.93秒 |
通过GT Metrix和Pingdom逐一对各个缓存插件进行测试发现, 在没安装缓存之前需要将近2m的时间打开网页,而安装了缓存之后都有很好的性能提升,特别是Cache Enabler 提速了将近一倍。这是一个巨大的性能优化。那么测试的情况和实际的网页浏览体验感受是否一致能?
三、最佳性能优化插件推荐
爱在灵灵久博客站长在另外一台ECS云服务器wordpress博客上进行了实际安装体验,不安装之前网站打开特别缓慢,需要1秒多才能打开,浏览器一直在打转,转呀转,转呀转,还有就是进度条缓慢在前进。虽然网页可以看到具体的内容,但是进度条还在前进、图标还在打转,这让人感觉很不爽。安装了Cache Enabler后效果立马就出来了,第一次加载网页会需要800多ms,而这主要是浪费在waiting(TTFB)上,数据库查询缓慢,页面等待数据加载完成后再渲染。经过缓存后再次打开只需要36ms左右,闪电加载显示,快了很多很多。
另外,也测试使用了其他几款缓存插件,但是安装使用后控制台容易出现报错,特别是进行了css和js优化的插件。以前总觉得WP Super Cache速度是贼快的,经过对比后发现Cache Enabler比WP Super Cache的加速效果还好,速度要快20ms左右。当然,在服务器上和在虚拟主机上因为自主权限的不同,选择使用缓存插件又会有些不一样。本站爱在灵灵久博客是在虚拟机上依然使用的是WP Super Cache缓存插件,打开速度在130ms左右,还是可以接受的,具体设置见:(wordpress网站静态缓存插件之WP-Super-Cache详细安装与配置说明教程)。如果是服务器的话,强烈推荐使用Cache Enabler。
四、好用的Cache Enabler安装及设置
安装Cache Enabler非常简单,到插件市场中找到Cache Enabler – WordPress Cache 然后安装启用即可,如下图:
Cache Behavior选项中将如下两项勾选上:
Cache Exclusions这里是将缓存也包含评论的用户,/^(wp-postpass|wordpress_logged_in)_/ 意思是没注册本站但是提交过评论的用户也只是提供缓存页面,不提供动态页面。
动态页面只提供给管理员和注册登陆的用户,当然该项也可以留空默认,根据自己的需要设置。
Cache Minification 设置为HTML 不用设置为HTML&inline JS 因为有的会导致网站js不能使用,影响部分功能,同时速度也没有明显差别。
另外,还有一个奇怪的发现,将该插件压缩后下载到桌面,发现360报毒,后来查明原因是其中的链接的问题,出现451错误链接 https://www.keycdn.com/ 显示451 Restricted ,下载该文件并进入文件夹然后通过cmd命令查找 findstr /s /i "keycdn.com" *.* 发现文件在"\cache-enabler\inc\cache_enabler.class.php"及cache_enabler_disk.class.php中 将链接去掉或换成自己的即可。再次用360检查后没问题,同时提交到在线检查网站检查也正常。将文件修改好后再次启用该插件,浏览页面第二次后出现缓存,速度飞起。
五、其他组合插件及工具
wordpress博客若想打开快,首先需要一个好的wordpress主题,然后再逐一优化,如php优化,mysql优化,安装缓存,cdn加速动静分离等。
在安装了Cache Enabler后这里再推荐大家使用memcached拓展,到宝塔面板中一键安装memcached,安装后再将object-cache.php(文件下载)放入wordpress网站/wp-content目录中,不是插件目录哦,然后到网站根目录中找到文件wp-config.php,将代码define('ENABLE_CACHE', true);加入到第40行左右的位置即可。结果如下:
- /** 数据库整理类型。如不确定请勿更改 */
- define('DB_COLLATE', '');
- define('ENABLE_CACHE', true);
- //define('WP_CACHE', true);//取消batcache缓存,换为cache enable
另外,很多站长推荐使用memcached+batcache的组合,后来发现batcache插件无法生成缓存,不知道什么原因。因此使用了memcached+Cache Enabler的组合,静态的直接使用CacheEnabler缓存到硬盘的网页内容,动态的则调用memcached加速。过几天等又拍的免费流量和空间申请下来后将图片进行cdn加速分离,这样应该会更快了。
2024年3月1日 下午3:00 沙发
博主好,object-cache.php的百度分享已失效,可以提供备用链接吗?或者其他的下载地方。谢谢。
2024年4月19日 下午11:24 1层
@lei 很久没搞过这个了,不知道还能不能用,有自己去试试 https://pan.baidu.com/s/1gjvdgQrHitfn1zWb55X_Cg?pwd=8888