1. 云栖社区>
  2. PHP教程>
  3. 正文

将session保存到redis中的方法

作者:用户 来源:互联网 时间:2017-12-01 10:03:27

保存sessionredis方法

将session保存到redis中的方法 - 摘要: 本文讲的是将session保存到redis中的方法, 方法一、 session.save_handler = redissession.save_path = “tcp://127.0.0.1:6379″修改后重启php-fpm或nginx,phpinfo() 方法二、 ini_set(“s

方法一、


session.save_handler = redissession.save_path = “tcp://127.0.0.1:6379″修改后重启php-fpm或nginx,phpinfo()


方法二、


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
session_start();
$_SESSION['redis']="aaaaaa";
echosession_id();
echo"
";
echo$_SESSION['redis'];
echo"
";
$redis=newredis();
$redis->connect('192.168.1.108',6379);
echo$redis->get("PHPREDIS_SESSION:ruk5i2vlu2hvtmfr5hig4l55f6");//这个key我是通过telnet到redis查的。
?>

将session保存到redis中的方法


echo session_id();显示出来是ruk5i2vlu2hvtmfr5hig4l55f6,开始的时候,echo $redis->get("ruk5i2vlu2hvtmfr5hig4l55f6");不管怎么样都取不到值,因为memcache这样是可以取 到值的,所以我就想redis估计也是这样。telnet到redis看了一下,原来命名key值的方式是不一样的,看下图


将session保存到redis中的方法


redis telnet查看session


到这儿session存储到redis是没有问题了,怎么同步呢。多服务器时,redis是可以配置同步的


以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索保存 , session , redis 方法 ,以便于您获取更多的相关知识。