CentOS7 PHP+Redis实现Session共享

先yum简单的安装redisphp

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum -y install redis 

简单配置一下:nginx

vim /etc/redis.conf
daemonize yes
bind 172.16.1.61
启动redis:redis-server /etc/redis.conf

PHP和nginx安装就略过了。。。。web

PHP和nginx安装目录都是 :/apps/links/redis

nginx的站点目录为 /webCodes/blog/ 域名为:blog.lzbbg.cnshell

PHP默认状况下是不支持对Redis的操做的。因此这里咱们须要本身手动安装第三方的扩展,使其支持对Redis的操做。json

PHP安装redis插件:名字为:php_redis_plugin.tar.gz 在哪下载我忘了。vim

tar xf /tmp/php_redis_plugin.tar.gz -C /tmp/
cd /tmp/phpredis
phpize
./configure --with-php-config=/apps/links/php/bin/php-config 
make && make install

修改PHP的配置:浏览器

vim /apps/links/php/lib/php.ini
[Session]
session.save_handler = redis
session.save_path = "tcp://172.16.1.61:6379" 尾行添加:
extension_dir = "/apps/links/php/lib/php/extensions/no-debug-non-zts-20131226/"
extension = redis.so 

重启php-fpm,安装完成。
session

写个PHP小脚本测试一下:app

vim /webCodes/blog/redis.php  

<?php
//ini_set("session.save_handler", "redis");
//ini_set("session.save_path", "tcp://172.16.1.61:6379");
//在php.ini没有配置的话,能够在这里配 session_start();
//存入session $_SESSION['class'] = array('name' => 'toefl', 'num' => 8); //链接redis $redis = new redis(); $redis->connect('172.16.1.61', 6379); //检查session_id echo 'session_id:' . session_id() . '<br/>'; //redis存入的session(redis用session_id做为key,以string的形式存储) echo 'redis_session:' . $redis->get('PHPREDIS_SESSION:' . session_id()) . '<br/>'; //php获取session值 echo 'php_session:' . json_encode($_SESSION['class']); ?>

 浏览器访问:http://blog.lzbbg.cn/redis.php

查看redis是否实现了session共享:

 出现以上结果表示PHP+redis的session共享成功了!!!

相关文章
相关标签/搜索