zoukankan      html  css  js  c++  java
  • CentOS7 PHP+Redis实现Session共享

    先yum简单的安装redis

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

    简单配置一下:

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

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

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

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

    PHP默认情况下是不支持对Redis的操作的。所以这里我们需要自己手动安装第三方的扩展,使其支持对Redis的操作。

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

    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,安装完成。

    写个PHP小脚本测试一下:

    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共享成功了!!!

  • 相关阅读:
    Linux基础命令grep(如何过滤字符串)
    Linux基础命令wc(如何统计文件的行数?如何统计文件的字节数?)
    Linux基础命令tr(如何替换字符)
    django4
    django3
    django2
    django1
    jQuery2
    jQuery1
    事件
  • 原文地址:https://www.cnblogs.com/jeson-lbb/p/9897887.html
Copyright © 2011-2022 走看看