WordPress - Redis Object Cache 问题/错误解决方案

为了进一步优化网站性能,今天我尝试使用 Redis Object Cache 对WordPress博客进行缓存加速。
在实现过程中遇到了一些问题,折腾了好一会,最终成功开启了Redis。

 

本文不探讨Redis和相关插件的作用,仅对过程中出现的问题/错误进行解答。

 

环境:1Panel

 

1.Redis Object Cache 插件界面无法连接至Redis(Connection Refused)

 

① 确保PHP安装了 redis 扩展

② 在WordPress网站根目录的 wp-config.php 文件末尾,添加如下代码:

// Redis
define('WP_REDIS_HOST', 'redis'); // 这里不要填写redis,也不要填写IP,填写Redis容器名(1Panel-容器),如:1Panel-redis-C22Y
define('WP_REDIS_PORT', '6379'); // Redis 端口
define('WP_REDIS_PASSWORD', 'pwd'); // 如果设置了Redis密码,则填写在这里

添加完代码后,刷新插件页面再次尝试

 

2.启用 Redis Object Cache 插件后报Error界面

 

找到wordpress目录下 wp-content/object-cache.php ,找到 protected function build_parameters() 函数,参考以下代码修改:

protected function build_parameters() {
        $parameters = [
            'scheme' => 'tcp',
            'host' => 'redis', // 就填 'redis',不用改成容器名
            'port' => 6379,
            'password' => 'pwd', // 你的 Redis 密码
            'database' => 0,
            'timeout' => 1,
            'read_timeout' => 1,
            'retry_interval' => null,
            'persistent' => false,
        ];

修改完后刷新WordPress页面,即可解决。

THE END