php用redis保存session
Posted Leone
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php用redis保存session相关的知识,希望对你有一定的参考价值。
1.修改php.ini中session配置:
ini_set(\'session.save_handler\', \'redis\');
ini_set(\'session.save_path\', \'tcp://192.168.1.10:6379\');
//redis有密码的话
//ini_set(\'session.save_path\', \'tcp://192.168.1.10:6379?auth=password\');
注意:php-fpm.conf中的配置会覆盖php.ini中的配置,所以要确保php-fpm中的对应配置关闭,或者修改:
2.代码中使用session:
<?php /* *可以配置如下选项 *session.auto_start = 1 --自动开始,不需要session_start() *session.cookie_lifetime = 31536000 --cookies中的session_id一年才过期,默认是0,关闭浏览器就过期。 *session.gc_maxlifetime = 1447 --session回收时间,默认1447,存贮在redis中的session的expire被设置为此项。 */ session_start(); // 可以配置session.auto_start = 1 ,自动开启。 $_SESSION[\'foo\'] = \'bar\'; echo $_SESSION[\'foo\']; //bar, 当前的session已经存在redis中 //redis中以string类型存储session $redis = new Redis(); $redis->connect(\'localhsot\', 6379); echo $redis->get( \'PHPREDIS_SESSION:\'.session_id() ); //格式:string(29) "uid|i:554:"";username|s:5:"hello";"
以上是关于php用redis保存session的主要内容,如果未能解决你的问题,请参考以下文章