很久之前,就分享过各种Wordpress优化加速教程。相信各位也能从我网站体验上,感觉出来这种加速是有效的。当然,我做了很多优化,其中就包括使用memcached来缓存数据库查询结果,进而在用户访问时,减少数据库查询的过程。
今天,在各个方面详细的讲解下Wordpress的加速优化。先来讲解第一篇,即本文的教程,即Wordpress开启Memcached缓存。
前期准备
这一部分,主要需要你的服务器或主机安装Memcached这个扩展(请注意是Memcached,而不是Memcache)。如果你有宝塔,可以直接在宝塔页面找到Memcached,直接安装就可以了。
如果你没有宝塔,可能就比较费劲,由于各个系统不同,这里就不给出教程了。如果你要自行安装(非宝塔),那么你需要安装Memcached这个软件包,还需要安装相应的php扩展php-memcached。
大致所需要的命令(以Centos7为例,Centos8通用命令):
yum install memcached
yum install php-memcached
systemctl enable memcached
systemctl start memcached
由于我用的是lamp一键包,没有通过命令行去安装memcached,这里无法给你具体的指导。
WordPress设置
这里,需要在网站根目录下wp-content文件夹下,上传一个object-cache.php文件,该文件会在下方提供给各位。
https://pan.xunlei.com/s/VNIN_gbr-Gyo582QOUj5BCOEA1?pwd=a89r#
然后,网站根目录下,找到wp-config.php文件,编辑该文件,找一个位置插入如下代码,如果不知道插入到第几行,可以放在define(‘WP_DEBUG’, false);该代码下
define('WP_CACHE', true);
到此,你的Wordpress就开启了Memcached缓存数据库查询结果的功能。
如果你不放心,或者不确定是否成功开启memcached缓存功能,可以继续往下看,下面来告诉你如何确定网站是否开启了memcached功能。
Memcached缓存功能确认
你可以通过F12判断开启前后的区别,通过wp-config.php目录里的缓存开关设置是否开启memcached。当然,也可以通过下方更加明确的方式来判断
如果感兴趣就付费观看吧:
编辑主题根目录footer.php,在适当位置插入如下代码:
<span class="name"><?php echo get_num_queries(); ?> queries</span>,<span class="link"><?php timer_stop(3); ?> seconds</span>
保存,进去网站前端,网站底部会出现16 queries,0.109 seconds这样的信息,表示该页面查询数据库16次,0.109秒内生成页面。基本上,就可以确认memcached生效了。
如果没有生效,那么大概会是这个样子:168 queries,1.109 seconds。你可以自己通过在wp-config.php中插入的那句代码,true改成false来观察这个变化(当然,最好可以删掉wp-content目录下的object-cache.php再观看区别)。事实上,只要你的数据库查询次数在20左右,就可以确认memcached已经生效了。
原创文章,作者:古哥,转载需经过作者授权同意,并附上原文链接:https://iymark.com/articles/1544.html
评论列表(10条)
wp的主题根目录:wp-content/themes/justnews
宝塔用户记得配置完后重启PHP,不然可能不生效
@太耀:很有道理,多谢
按照教程已经开起来了,有的文章打开查询任然略高40多次查询,但是第二次刷新就变成了不到10次查询,这就是缓存了吧?我尝试没开Memcached的时候网站首页刷新一次都要查询130多次。 对了古哥,您目前的footer展示网站用户的代码是多少哦 我想加个展示网站注册用户
@剑心:get_var(“SELECT COUNT(ID) FROM $wpdb->users”); echo $users; ?>
这是显示用户数的代码
@古哥:这段代码是放哪呀
@剑心:footer.php文件里
古哥,有空补一下下载链接呗,object-cache.php失效了
@剑心:已修复
@古哥:感谢