余二五 2017-11-15 908浏览量
通常我们将session存储到memcached,但是有时候老大让你将session存储到Redis怎么办,因此有必要了解下如何将session存到redis。
step1、服务器上需要安装redis扩展(以php7为例)
1
2
3
4
5
6
7
8
|
# 以安装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 相关部分代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# 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
例如:
1
2
3
|
> keys PHPREDIS_SESSION* "PHPREDIS_SESSION:55fsmg64ooebqqaotlue6050g7" > get "PHPREDIS_SESSION:55fsmg64ooebqqaotlue6050g7" # 即可查看到session里面的数据。
|
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
分享数据库前沿,解构实战干货,推动数据库技术变革