php Session存储到Redis的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php Session存储到Redis的方法相关的知识,希望对你有一定的参考价值。

当然要写先安装php的扩展,可参考这篇文章:Redis及PHP扩展安装
修改php.ini的设置
复制代码 代码如下:

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

session redis
如果不想修改php.ini可这样
复制代码 代码如下:

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 即可。
有网友提到相对于文件存储的session,redis或者memcache存储session值会有并发一致性的问题,这块并没有细测过。
复制代码 代码如下:

<?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());
 ?>

 

以上是关于php Session存储到Redis的方法的主要内容,如果未能解决你的问题,请参考以下文章

配置 PHP 的 Session 存储到 Redis,实现多台服务器共享SESSION

PHP存储Session

PHP 配置 Session存储方式 为Redis

php session之redis存储

PHP中Redis替代文件存储Session语句

将php的session存放到redis里面