随着WordPress数据越来越多,我们会发现WordPress站点的访问速度也会在不断的降低。即便我们会有将静态文件和图片分离到对象存储,但是网站速度还是相对慢。这个是WordPress程序固有的问题,我们需要通过技术手段来提高软件的加载速度,而不是一味的提高服务器的配置。这篇文章中,我们就通过利用常用的WP Super Cache加速插件的同时,配合Memcached对象加速缓存的方式提高网站速度。
当然,麦子个人也是建议在加速WordPress的同时还是需要对主题进行优化的,尽量的选择轻便的主题。
第一、WP Super Cache 插件安装
WP Super Cache 插件安装很简单,直接在后端搜索下载,或者直接在这里下载。
这款插件是有免费和付费版本的,对于一般用途来说差异不是太大。比如免费版本不支持对象缓存,这里我们后面用Memcached插件替代即可。
WP Super Cache 插件有支持简体中文,根据提示启动缓存即可。其他默认的可以不设置,也可以根据需要设置。
比如我需要开启页面压缩,这里需要确保我们已经安装GZIP组件。如果我们安装的是服务器套件的,都会默认安装。
我们也可以接入第三方CDN缓存静态页面加速,这里前面我提到的是建议用静态分离图片或者上传附件到对象存储,这样效果更好一些。如果预算充足,网站还可以套用全站CDN。
这样,WP Super Cache 插件激活安装完毕。可以看看加速效果。
记住这个信息,等会再比较。
第二、部署Memcached对象缓存
提到Memcached,我们肯定会有看到过Redis。两者都是对象缓存,对于两者的区别我们可以阅读相关文章,我个人的理解是大部分网站用Memcached的,对于比较复杂的项目用 Redis比较多。所以,这里网站我们用Memcached。
目前,我测试的WEB环境是用的 OneinStack 一键包。PHP8.2、Nginx、MySQL5.5。
我开始在配置服务器的时候是默认的选择PHP扩展 4 11 12,有包括 Memcached,但是在安装 object-cache.php 缓存插件的时候无法成功,有提示错误。
那就是说明还需要安装Memcache。但是,Oneinstack默认支持的Memcache是支持PHP7.0及之前版本的。我也反馈给Oneinstack开发者希望后续有支持。这里,我们可以先手动来解决这个问题。
- 官网下载最新(下载地址)支持PHP8的Memcache。
下载的文件放到 /root/oneinstack/src
目录中。
- 修改pecl_memcache_ver参数。在
/root/oneinstack
跟目录下versions.txt
文件。
将pecl_memcache_ver后面的参数修改成8.0。然后执行命令:/root/oneinstack/install.sh --php_extensions memcache
。
完成安装Memcache。下面我们就需要部署 Memcached插件。
插件:https://wordpress.org/plugins/memcached/
这里我们找到大家常用的 Memcached Object Cache 插件。下载到本地,可以看到有 object-cache.php 文件。将这个文件丢到 wp-content 目录下,不是插件的目录。
丢进去还不够,还需要修改下配置文件。
将 wp-config.php 配置文件中检查是否有几个代码。
1、启动缓存
define('WP_CACHE', true);
这个一般是有的,因为我们前面开启 Super Cache插件的会自动安装。
2、添加缓存KEY
define( 'WP_CACHE_KEY_SALT', '...long random string...' );
这里”…long random string…”可以替换我们的任意字符。
define( 'WP_CACHE_KEY_SALT', 'idcxen.com' );
这样,我们再看看缓存效果。确实比之前还要加速更好一些,这里我是默认的WP空页面主题,数值变化不太大,如果是页面丰富的内容,加速效果还是明显的。
总结,我们可以看到,可以配合WP Super Cache ,以及 Memcached 对象缓存进行给WP加速。不一定非要 Oneinsack环境,只要是有 LNMP环境都是可以的。
文章参考 乐运维:https://www.idcxen.com/wpsupercache-memcached.html