PHP Session可以保存到文本或者内存、还有数据库,今天讲的.是存到Redis的方法。就让小编来告诉大家吧!
修改的设置
复制代码 代码如下:
_handler = redis
_path = “tcp://″
修改后重启php-fpm或nginx,phpinfo()
session redis
如果不想修改可这样
复制代码 代码如下:
ini_set(“_handler”,”redis”);
ini_set(“_path”,”tcp://″);
如果配置文件/etc/里设置了连接密码requirepass保存session的时候会报错,save_path这样写 tcp:// 即可。
有网友提到相对于文件存储的session,redis或者memcache存储session值会有并发一致性的问题,这块并没有细测过。
复制代码 代码如下:
<?php
//如果未修改下面两行注释去掉
//ini_set('_handler', 'redis');
//ini_set('_path', 'tcp://');
session_start();
$_SESSION['sessionid'] = 'this is session content!';
echo $_SESSION['sessionid'];
echo '<br/>';
$redis = new redis();
$redis->connect('', 6379);
//redis用session_id作为key并且是以string的形式存储
echo $redis->get('PHPREDIS_SESSION:' . session_id());
?>