所在位置:
首页 >
营销资讯 >
网站运营 > [建站教程]Discuz使用redis缓存时如何指定数据库?
[建站教程]Discuz使用redis缓存时如何指定数据库?
时间:2023-08-06 21:00:02 | 来源:网站运营
时间:2023-08-06 21:00:02 来源:网站运营
[建站教程]Discuz使用redis缓存时如何指定数据库?:在我们使用redis作为discuz的缓存时,体验到了速度的提升。但是,当我们有两个以上的网站都使用同一个redis server开启缓存时,就存在冲突了,因为默认的情况下,discuz使用第一个库,也就是redis的db0作为数据存储的库的。
我们只需要做简单的改造就可以优雅的解决这个问题,开始:
1、增加配置项:
打开:config/config_global.php在$_config['memory']['redis']['serializer'] = 1;的下一行添加一行:$_config['memory']['redis']['db'] = 1; 其中1就是你选的DB编号了。
2.修改代码文件,让discuz支持db参数:
打开source/class/memory/memory_driver_redis.php:找到$this->obj->setOption(Redis::OPT_SERIALIZER, $config['serializer']);在下一行增加DB选择的代码:
$this->select($config['db']);
3.找到clear()函数,把flushAll操作改为flushDb操作,因为我们的redis不是专门给一个网站用的,flushAll是把redis全部数据都清了(flushdb是把本db清了),这段代码是谁写的,我也是服了。。。
到这里就算是大功告成了。看下效果:
嗯,都写到规定的数据库里了,哎呀,干净了。