温馨提醒:本文最后更新于2023年7月9日,部分网盘链接偶尔抽风,下载地址如有失效,请在文章评论区留言或者请私信老刘反馈。
老刘今天在两个站点同时启用Redis缓存后,发现访问第一个站,会直接跳转到第二个站,而且第二个站也各种异常。本来以为是宝塔的
https防窜站
功能异常造成的,可是关了也没用。思来想去可能是同时启用的两个站数据互串了,和以前两个站同时启用Memcached问题一样。所以今天就发一期教程,解决此类问题。
同台服务器上多个 WordPress 站点怎么同时使用 Memcached
同台服务器多个网站同时启用Memcached,访问一个网站会跳转到另外一个网站,就是数据互串了。
原因分析
这是因为 object-cache.php
是使用 WordPress 的表前缀($table_prefix
)来区分不同站点在内存中的缓存的。如果你在同个服务器多个 WordPress 网站的表前缀都相同,都是默认的 wp_
,那么 object-cache.php
就无法区分是哪个站点了。那么怎么解决呢?
解决对策
知道了问题,那么就非常好解决,有两个解决方法:
1. 修改表前缀,让不同的 WordPress 博客使用不同的表前缀。但是一般修改表前缀都涉及到数据库,很多小白都不会操作,包括老刘也不会,
2. 如果修改表前缀不方便,我还提供了 WP_CACHE_KEY_SALT
这个缓存 key 盐值的常量,你只需要在不同站点的 wp-config.php 文件定义不同的 WP_CACHE_KEY_SALT
值即可。
比如两个站点分别定义为:
define('WP_CACHE_KEY_SALT', 'site1');
define('WP_CACHE_KEY_SALT', 'site2');
例如
同台服务器上多个 WordPress 站点怎么同时使用Redis
服务器安装Redis扩展后,默认创建16个Redis数据库(序号0-15),WordPress插件Redis Object Cache中没有选择指定数据库序号的选项,只能使用Redis的第一个库。
一台服务器如果有多个WordPress站点并且都安装使用Redis对象缓存插件,就会导致其中一个站点的数据是另一个站点的数据。
解决对策
打开第二个站点的/wp-content/plugins/redis-cache/includes/object-cache.php
搜索:database
,大概在第629行,把“0”改成1-15的任意数。
同样地,修改完重启Redis即可
可以进入服务器目录,把wp-content
下面的这个缓存文件object-cache.php
删掉,就可以恢复访问后台了。
现在再去启用插件就不会出问题了
还没有人赞赏,快来当第一个赞赏的人吧!
- 66¥
- 88¥
- 99¥
- 188¥
- 199¥
1、本站所有文章内容均来源于互联网,我站仅作收集整理,VIP/积分赞助/打赏等费用仅为维持网站正常运转;
2、本站部分文章、图片不代表本站立场,并不代表本站赞同其观点和对其真实性负责;
3、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报;
4、本站资源大多存储在云盘,如发现链接失效,请联系我们,我们会第一时间更新;
5、本站分享的高质量高清写真图集,出镜模特均为成年女性正常写真无R18内容,仅限用于摄影爱好者提供素材与鉴赏学习;
6、本站所有文章、图片、资源等均为收集自互联网,版权归原作者所有。仅作为个人学习、研究以及欣赏!请在下载后24小时内删除。共同维护和谐健康的互联网!如果您发现本站上有侵犯您的权益的作品,请与我们取得联系,我们会及时删除或者修改。