ttt-logo 超方科技 tesseract technology tianjin

同个服务器多个 WordPress网站怎么同时使用 Memcached?

转载自:https://blog.wpjam.com/m/memcached-for-sites-in-same-host/

使用 WPJAM Basic 插件的用户,可能知道:WPJAM Basic 插件已经集成 Memcached 的功能,将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下,就可以开启 Memcached 缓存。

但是在同个服务器安装了多个 WordPress 网站,如果同时将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下来同时开启 Memcached 缓存,可能会出现问题,访问一个网站会跳转到另外一个网站,数据会串了。这是怎么回事,怎么解决呢?

这是因为 object-cache.php 是使用 WordPress 的表前缀来($table_prefix)区分不同站点在内存中的缓存的。如果你在同个服务器多个 WordPress 网站的表前缀都相同,都是默认的 wp_,那么 object-cache.php 就无法区分是哪个站点了。

知道了问题,那么就非常好解决,有两个解决方法:

1. 修改表前缀,让不同的 WordPress 博客使用不同的表前缀。我开发了一个 WordPress 数据库表前缀修改器,一键生成修改数据库表前缀所需的SQL,让你在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');

如果设置了还不行,可能你的 object-cache.php 不是最新版,那就下载一下最新版的 WPJAM Basic 插件,然后将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下。

标签TAGS

与标签相关的文章

最新文章

热门文章

其他文章

Sign up for our Newsletter

iPhone

Lorem ipsum dolor sit amet

MacBook

Sed do eiusmod tempor incididunt

iPad

Tempor incididunt ut labore et dolore