php中把session存入到redis中

来源:互联网 发布:影子战术将军之刃 mac 编辑:程序博客网 时间:2024/04/29 05:04

session一般存在服务器的tmp目录下,在我们访问php的网站的时候,一般会有个phpsessid的cookie,他的内容是服务器中tmp目录下的一个文件名,每个浏览器对应网站一个phpsessid,这个文件里面就包含了我们对当前访问用户设置的一些session值,比如存了的密码或者token。phpsessid这个名可以在php.ini配置文件中修改。搜索session.name,修改为自己所需的即可。

方法一:
修改php.ini实现

session.save_handler = redissession.save_path = "tcp://127.0.0.1:6379"

修改完后,重启web服务器

方法二:

ini_set("session.save_handler", "redis");ini_set("session.save_path", "tcp://127.0.0.1:6379");

如果配置文件 /etc/redis.conf 里设置了连接密码 requirepass,保存 session 的时候会报错,save_path 这样写 tcp://127.0.0.1:6379?auth=authpwd 即可。

测试代码:

<?php// 如果未修改php.ini下面两行注释去掉// ini_set('session.save_handler', 'redis');// ini_set('session.save_path', 'tcp://127.0.0.1:6379');session_start();$_SESSION['sessionid'] = 'this is session content!';echo $_SESSION['sessionid'];echo '<br/>';$redis = new redis();$redis->connect('127.0.0.1', 6379);// redis 用 session_id 作为 key 并且是以 string 的形式存储echo $redis->get('PHPREDIS_SESSION:' . session_id());
0 0
原创粉丝点击