Press "Enter" to skip to content

使用Redis加速WordPress博客系统

主机环境:
[root@test ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@test ~]# uname -a
Linux test 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Wordpress环境:LNMP,使用宝塔安装.

1.安装redis服务器
服务器环境是由宝塔搭建的,所以直接到面板安装redis即可(我这里已安装,所以3那边显示卸载,未安装的话将显示安装字样).
单独安装redis的话可参考:https://www.tracymc.cn/archives/397

2.安装redis的php扩展
在php72的管理里面,安装redis扩展.


php编译安装添加模块参考:https://www.tracymc.cn/archives/574
安装完最好重启下php服务.

3.安装wordpress的redis插件(Redis Object Cache)

Redis Object Cache插件地址:https://wordpress.org/plugins/redis-cache/
在wordpress的插件管理里面搜索“Redis Object Cache”,然后下载并启用Redis Object Cache.在线安装的话主机需要开启ftp服务并配置相关目录的相关权限,没开服务的话可前往官网下载插件(下载地址https://downloads.wordpress.org/plugin/redis-cache.1.3.8.zip),下载完毕后解压插件,放到/path/wp-content/plugins/目录下.

4.配置wordpress
默认情况下,Redis Object Cache插件会默认通过TCP协议连接127.0.0.1:6379并且选择Redis数据库db0,强烈建议redis配置认证密码和修改默认的端口,所以接下来我们需要修改wp-config.php这个文件(如果我们没有修改redis端口6379,没有设置redis密码的话,这个config文件是不用修改的).
在That's all, stop editing! Happy blogging.这一行前添加如下内容:
define('WP_REDIS_HOST', '127.0.0.1'); //redis主机的地址,如果和wordpress是同一台机器的话建议写为127.0.0.1,需先修改redis的配置改成‘bind 127.0.0.1’
define('WP_REDIS_DATABASE', '0'); //连接的数据库
define('WP_CACHE_KEY_SALT', 'wp_'); //redis键值的前缀
define('WP_REDIS_MAXTTL', '86400'); //键值过期时间
define('WP_REDIS_PORT', '1234'); //redis端口,建议修改为非默认端口,需先修改redis的配置改成‘port 1234’
define('WP_REDIS_PASSWORD', 'test1234'); //redis认证密码,强烈建议设置认证密码,需先修改redis的配置改成‘requirepass test1234’

/* That's all, stop editing! Happy blogging. */
更多参数含义见:

Redis Object Cache


其中遇到的天坑:网上很多教程说是直接将上面的配置直接加到wp-config.php的后面,但是实测的时候发现配置了密码的话会有问题,会连接不上redis,这个折腾了很久.上面的配置一定要加在“That's all, stop editing! Happy blogging.”这一行前面.切记!!!!!!

5.开启Redis Object Cache插件
配置完成后,进入WordPress控制台,Settings->“Redis”检查配置无误后,点击“Enable Object Cache”,在线开启的过程中也需要开启ftp服务并配置相关目录的相关权限,没开服务的话可以直接先把/wp-content/plugins/redis-cache/includes/object-cache.php的这个文件复制到/wp-content这个目录下然后点击“Enable Object Cache”按钮即可.

6.验证缓存服务可用性
使用命令行连接至Redis server:
redis-cli -h 127.0.0.1 -p 1234 -a test1234
-h:redis主机地址
-p:redis端口
-a:redis认证密码

可以看到,db0中已经有了数据.

上图可以看出键值都是以wp_开头,再刷新页面的话发现键值在不断增加,说明缓存配置成功.

2 Comments

  1. alexander alexander 十二月 12, 2018

    非常感谢大神的详细教程,测试已经输出:
    # Keyspace
    db0:keys=192,expires=111,avg_ttl=82929891
    应该是成功了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注