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";" 

 




 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM