微擎两个站点开启redis 造成数据冲突,可以参考以下方法试下:
1. 开启多个redis 使用不同端口进行区分
2. 使用不同的缓存 A使用redis B使用memcache
3. 使用不同的识别标志:更改authkey 和更改微擎前缀 ims\_
4. 使用redis不同库标识 增加 $config\[‘setting’\]\[‘redis’\]\[‘database’\] = 1028;
// -------------------------- CONFIG SETTING --------------------------- //
$config\[‘setting’\]\[‘charset’\] = ‘utf-8’;
$config\[‘setting’\]\[‘cache’\] = ‘redis’;
$config\[‘setting’\]\[‘timezone’\] = ‘Asia/Shanghai’;
$config\[‘setting’\]\[‘memory\_limit’\] = ‘256M’;
$config\[‘setting’\]\[‘filemode’\] = 0644;
$config\[‘setting’\]\[‘authkey’\] = ‘87ddc951’; //修改authkey
$config\[‘setting’\]\[‘founder’\] = ‘1’;
$config\[‘setting’\]\[‘development’\] = 0;
$config\[‘setting’\]\[‘referrer’\] = 0;
// -------------------------- CONFIG REDIS --------------------------- //
$config\[‘setting’\]\[‘redis’\]\[‘server’\] = ‘127.0.0.1’;
$config\[‘setting’\]\[‘redis’\]\[‘port’\] = 6379;
$config\[‘setting’\]\[‘redis’\]\[‘pconnect’\] = 1;
$config\[‘setting’\]\[‘redis’\]\[‘database’\] = 1028; // 增加本行 区分不同库 1028为数字 自定义
$config\[‘setting’\]\[‘redis’\]\[‘timeout’\] = 30;
$config\[‘setting’\]\[‘redis’\]\[‘session’\] = 1;
$config\[‘setting’\]\[‘redis’\]\[‘database’\] 不同即可。
经过测试 这个方法不行。
要想要2个站点的redis不冲突 需要修改 framework/function/
cache.redis.func.php
中cache\_redis()方法;
~~~
return $redisobj;
~~~
改成
~~~
$redisobj->select(2); // 选择 DB2数据库
return $redisobj;
~~~
宝塔面板
后续:上述方法不行的话可以开两个redis端口
1、首先复制/www/server/redis/redis.conf 和 www/server/redis/redis.pid
2、把复制好的文件名改成要开启的端口 例:redis6380.conf
3、打开redis6380.conf 把里面的port全部改成6380
4、最后一步使用linux命令
/www/server/redis/src/redis-server /www/server/redis/redis6380.conf 开启6380端口
清除redis缓存
1.先确保redis进程存活
ps -ef|grep redis
2.执行./redis-cli或者./redis-cli -h 127.0.0.1 -p 6379
\[root@slave bin\]# /bin/redis-cli
3.执行dbsize命令
127.0.0.1:6379> dbsize
4.清理 127.0.0.1:6379> flushall
5.退出 127.0.0.1:6379> exit