解决多个WordPress站点使用Redis对象缓存插件数据冲突的问题

2022年11月27日网页后端评论10,694字数 452阅读1分30秒阅读模式

Redis对象缓存插件

今天悲剧了,一个服务器两个wordpress网站,都使用了Redis缓存,结果第二个网站一启用Redis,整个站就没了,打开都是第一个站的数据,该怎么办呢?

问题解析

服务器安装Redis扩展后,默认创建16个Redis数据库(序号0-15),WordPress插件Redis Object Cache中没有选择指定数据库序号的选项,只能使用Redis的第一个库。

一台服务器如果有多个WordPress站点并且都安装使用Redis对象缓存插件,就会导致其中一个站点的数据是另一个站点的数据。

解决办法

一、打开第个站点的/wp-content/plugins/redis-cache/includes/object-cache.php

R_22-11-27-15-05-35_80

二、搜索:database,大概在第617行,把“0”改成1-15的任意数。

R_22-11-27-15-06-21_80

三、如果Redis数据库中已有冲突数据无法进入后台。

可以进入服务器目录,把wp-content下面的这个缓存文件object-cache.php删掉,就可以恢复访问后台了。

R_22-11-27-15-07-59_80

现在再去启用插件就不会出问题了。

R_22-11-27-15-11-52_80

WampServer 安装 Redis 扩展 学习笔记

WampServer 安装 Redis 扩展

最近在自己学习开发,涉及到验证码的存储问题,目前解决方案推荐的是用Redis,于是就想在本地搭建的环境中安装这个扩展。 那么具体怎么安装呢? REmote DIctionary Server(Redi...
为登录用户显示不同的 WordPress 菜单 网页前端

为登录用户显示不同的 WordPress 菜单

有的网站需要为未登录用户和登录用户显示不同的菜单,那么该如何实现呢? 可以通过下面的代码实现: 将下面代码添加到当前主题函数模板functions.php中: if( is_user_logged_i...
WordPress如何设置强制登录否则无法查看网站 网页前端

WordPress如何设置强制登录否则无法查看网站

如网站内容只希望注册用户浏览,对其他所有人隐藏,浏览者未登录访问直接跳转到登录注册页面,可以用下面的代码实现。 将下面代码添加到当前主题函数模板functions.php中: 代码一 未登录访问网站直...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定