将php的session存放到redis里面

通常我们将session存储到memcached,但是有时候老大让你将session存储到Redis怎么办,因此有必要了解下如何将session存到redis。


step1、服务器上需要安装redis扩展(以php7为例)

# 以安装php7为例,简单起见直接安装了全部的包
yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64 php70w-pdo.x86_64 php70w-fpm php70w-devel

# pecl install redis
# vim /etc/php.ini 加入一行: extension = redis.so

step2、修改php.ini配置

vim /etc/php.ini 相关部分代码如下:

# egrep -v ‘^;|^$‘ /etc/php.ini|grep session

session.save_handler = redis     # 默认的设置是file,这里改成redis

session.save_path = "tcp://192.168.2.11:6379?auth=passwd" # 这里填redis的连接配置参数
;session.save_path = "tcp://192.168.2.11:6379"  # 如果redis不带密码,则使用这种配置

session.use_strict_mode = 0
session.use_cookies = 1
session.use_only_cookies = 1
session.name = PHPSESSID     # 这个名字可以自己改
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440
session.referer_check =
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 5

存储到redis里面的keys的名称是类似 PHPREDIS_SESSIONxxxxxxxxx ,我们只需要连接到redis,并执行 keys PHPREDIS_SESSION* 即可列出全部的sessionkeys

例如:

> keys PHPREDIS_SESSION* 
"PHPREDIS_SESSION:55fsmg64ooebqqaotlue6050g7"
> get "PHPREDIS_SESSION:55fsmg64ooebqqaotlue6050g7"   # 即可查看到session里面的数据。
时间: 2024-10-17 23:58:07

将php的session存放到redis里面的相关文章

获取项目中文件,存放到Debug中。

说起这个,还真是费了一般功夫. 说个最简单的方法: 第一步:把需要生成到Debug中的文件放到项目中(注意:当前文件夹目录是什么样的,存放到Debug中也是什么样) 第二部:设置文件属性中 复制到输出目录(如果较新则复制:就是在内容更改后就更新,不复制:不会复制,始终复制:如果该文件需要修改,不建议选择此项) 生成操作(无,编译,内容,嵌入的资源) 第三步:已经完成了,是不是很简单. 还有个手动的方法(哈哈,有点麻烦哦!!!): /// <summary> /// 项目中资源文件保存到Debu

从数据库得到的结果集存放到List集合中

一.业务阐述 在开发中查询的数据库结果集,既要连接数据库.执行数据库操作.关闭数据库,还要把结果集的记录人为的设置到自己封装的DAO中等一系列的重复代码. 本文主要是想解决:用户只需要得到数据库连接,写sql语句,自己封装dao,其余的操作由封转的小框架解决这些重复的工作,用户得到的只是一个集合List. List里面的元素有集合Map其中key是数据库中的字段类型,value是字段类型对应的值这个函数 DBUtil.executeQuery(con, sql) List还提供集合元素存放的是d

session 保存到 redis 简单实现

参考资料: [session保存到redis简单实现]http://blog.csdn.net/ppt0501/article/details/46700221 [Redis学习]http://blog.csdn.net/can007/article/details/19848559

将Session放入Redis

默认情况下,我们的PHP是以文件的形式保存Session数据,所以,每次读写会话信息,就需要去访问硬盘. 为了解决会话信息夸域名问题,即为了实现同一时刻只能一个地方登录,同时也解决读写会话信息必须访问磁盘问题,我想到了,将Session保存到Redis中. 下面贴代码: sessionRedis::setSessionHandler(); class sessionRedis{ public static $redis; public static function sessionOpen($s

把raw目录下的几张照片存放到SD卡里面去

1 try 2 { 3 4 //SD卡路径 5 String filename =android.os.Environment 6 .getExternalStorageDirectory().getAbsolutePath() 7 + "/"+"1.JPG";//图片名称 8 //将文件从资源文件放到合适地方(资源文件也就是放在项目的res下的raw目录中的图片) 9 //将文件复制到SD卡中 10 File dir = new File(filename); 1

安装redis 并把java对象存放在redis中

redis windows 下载地址:https://github.com/ServiceStack/redis-windows 一.下载的安装包解压到盘符的指定位置,如下结构:(纯手敲,如果有缺失,见谅) Redis.doc redis-benchmark.exe redis-check-aop.exe redis-check-dump.exe redis-cli.exe RedisQFork_8524.dat redis-server.exe RedisService.doc 我的安装路径:

配置 PHP 的 Session 存储到 Redis

配置 PHP 的 Session 存储到 Redis PHP 的会话默认是以文件的形式存在的,可以配置到 NoSQL 中,即提高了访问速度,又能很好地实现会话共享,,,爽歪歪! 配置方式如下: 方法一:修改 php.ini 的设置 ? 1 2 session.save_handler = redis session.save_path = "tcp://127.0.0.1:6379" 修改完之后,重启一下 php-fpm. 方式二:通过 ini_set() 函数设置 ? 1 2 ini

server下修改项目发布位置,存放到tomcat\webapps下(项目发布之前)

maven项目发布后默认存放到target目录下(如:E:\MavenWorks\babasport\target):开发web项目时,还需要手动复制到web服务器下(Tomcat) 如果能自动部署到Web服务器,而不用每次手动把target下编译好的war包拷贝到Tomcat下就更好了. 下面是具体的使用方法: 第一步:修改发布路径到webapps下 第二步:修改服务器启动和停止时间为300秒 第三步:1 发布到webapps下的根目录(项目访问URL不需要填写项目名,如直接 http://l

Django session存储到redis数据库

把session存储到redis数据库,需要在setting中配置 django-redis 中文文档 http://django-redis-chs.readthedocs.io/zh_CN/latest/#cache-backend 在使用django1.6+的时候,默认会吧session存放在数据库django_session表里.如果要把session放在内存中,就应该在settings.py 中配置SESSION_ENGINE = "django.contrib.sessions.ba