/ 技术 / 45浏览

同一服务器下多个WordPress站点开启对象缓存(Object Cache)时异常的解决办法

今天在给站点开启对象缓存(Object Cache)时发现居然不能正常打开了,登陆后台也会直接跳转到另一个站点。

突然回想起来很久以前就遇到过类似的问题,但是忘了当时是如何解决的了,于是又搜索了一番,原来不管是用Memcached还是Redis,只要同一服务器下有多个站点使用Object Cache都会出现此类问题,主要是由于两个站点数据表前缀相同,都是wp_,从而使缓存数据冲突导致的。

解决办法也很简单,只需要找到wp-config.php文件并添加以下代码即可:

define('WP_CACHE_KEY_SALT', 'XXXX');

这里设置的意思是自定义缓存的前缀,其中“XXXX”为任意内容,只需要确保不同站点的内容不同即可,建议为相应站点域名,既方便也好区分。


  • 2024.2.16更新

经过上述操作后,发现问题并没有完全解决,其中一个站会偶尔串数据,另一个站直接空白打不开了,于是决定从根源下手,直接更换数据表前缀。

奔着越简单越好的想法,使用插件Brozzme DB Prefix进行一键更换,非常丝滑,亲测有效,更换数据表前缀后两个站均可以正常打开且无数据冲突。

所以以后建新站安装时一定要注意区分更换数据表前缀,尽量做到每个站都用不同的前缀。

LiNan
简约美观的WordPress免费导航主题——NDNAV-Child
简约美观的WordPress免费导航主题——NDNAV-Child
使用开源Vaultwarden搭建个人密码管理器
使用开源Vaultwarden搭建个人密码管理器

0

  1. This post has no comment yet

发表回复

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