`

php Redis存储Session

    博客分类:
  • php
阅读更多

Redis是一个高性能的key-value数据库。redis的出现,在部分场合可以对关系数据库起到很好的补充作用。另外一方面,在session存储上,也有很多人选择redis。通过它来弥补文件存储的速度和效益,以达到一个更高的可用性。

 

修改php.ini的设置

  1. session.save_handler = redis
  2. session.save_path ="tcp://127.0.0.1:6379"

修改后重启php-fpm,phpinfo()可以查看到session存储在redis中。

如果不想修改php.ini,可在代码中加入:

  1. ini_set("session.save_handler","redis");
  2. ini_set("session.save_path","tcp://127.0.0.1:6379");

如果redis.conf设置了连接密码(requirepass),session的save_path需修改为:tcp://127.0.0.1:6379?auth=requirepass的值。
如果选择redis数据库,session.save_path = "tcp://xx.xx.xx.xx:6789?database=11",诸如此类。

查看redis存储session的值:

  1. <?php
  2. session_start();
  3. $_SESSION['sessionid']='www.webyang.net';
  4.  
  5. $redis =new redis();
  6. $redis->connect('127.0.0.1',6379);
  7. //redis用 PHPREDIS_SESSION: 加 session_id 作为key,并且是以string的形式存储
  8. echo $redis->get('PHPREDIS_SESSION:'. session_id());//输出www.webyang.net
  9. ?>

在网上看到有人质疑redis存储session值会有并发一致性的问题(文件存储session有文件锁来处理),这块没有研究。
linux安装redis服务以及php redis扩展:www.webyang.net/Html/web/article_174.html

更多请支持:http://www.webyang.net/Html/web/article_180.html

2
0
分享到:
评论

相关推荐

    redis-session-manager-redis-session-manager-2.0.0.zip

    Redis Session Manager是一款基于Redis数据库实现的会话管理工具,它主要用在Web应用程序中,用于存储和管理用户的session数据。Redis作为一个高性能的键值存储系统,因其内存存储、速度快、支持丰富的数据结构等...

    redis-session-manager-redis-session-manager-2.1.0.tar.gz

    Redis Session Manager是一款基于Redis数据库实现的会话管理工具,它主要用在Web应用程序中,用于存储用户的会话数据。在Web应用中,session是用于跟踪用户状态的重要机制,当用户登录后,服务器会为该用户创建一个...

    redis-session-manager-redis-session-manager-2.2.1.tar.gz

    Redis Session Manager是一款基于Redis数据库实现的会话管理工具,它主要用在Web应用程序中,用于高效、安全地存储和管理用户的会话数据。这个压缩包文件"redis-session-manager-redis-session-manager-2.2.1.tar.gz...

    ThinkPHP3.1.3_redis_Storage_session:ThinkPHP3.1.3使用redis存储session

    ThinkPHP3.1.3使用redis存储sessionThinkPHP3.1.3使用redis存储session步骤:1.配置文件修改'SESSION_TYPE' =&gt; 'Redis', //session保存类型'SESSION_PREFIX' =&gt; 'Sess_', //session前缀'REDIS_HOST' =&gt; '127.0.0.1',...

    php连接redis存储session

    之前一直用memcached存储session,今天想改用redis存储session试试。网上提供了很多方法,简单的复杂的,限于本人水平有限,没有一个可以按着配置成功。于是自己简单的配置了一下,亲测有效,以下为过程,供人...

    phpCAS源码以及调用示例(redis管理session,解决无法logout的问题)

    要在phpCAS中使用Redis,你需要配置phpCAS的session handler,指定使用`session_set_save_handler`函数,并实现相应的session保存和恢复方法,将这些方法指向Redis客户端库,如Predis或phpredis。 解决phpCAS无法...

    ecshop redis session

    附件为ecshop 将session 存储到Redis类 ,在php 5.3,5.4下测试能过. 请修改init.php加载 redis 类,请在config.php 定义$session_type if ($session_type =="redis") { require(ROOT_PATH . 'includes/cls_Redis_...

    session入redis

    在讨论将Session存储到Redis之前,先要理解Session的概念和作用。Session即会话,是Web应用中用于跟踪用户状态的一种机制。通常,服务器会在用户登录时创建一个唯一的Session ID,并通过cookie或其他方式发送给...

    浅析PHP分布式中Redis实现Session的方法

    通过Redis客户端,我们可以看到Redis中存储的Session数据,其键以`PHPREDIS_SESSION:`开头,后接Session ID。 **总结** 通过上述两种方式,PHP可以在分布式环境中利用Redis有效地管理和存储Session。这种方法的...

    php+redis实现多台服务器内网存储session并读取示例

    $redis-&gt;get('PHPREDIS_SESSION:' . session_id()) . ' '; // PHP中的session echo 'php_session:' . json_encode($_SESSION['bieanju']); print_r($_SESSION['bieanju']); ?&gt; ``` 如果一切配置无误,上述...

    PHP使用Redis实现Session共享的实现示例

    通过这样的配置,PHP会自动将session数据存储在Redis服务器中。在PHP脚本中使用session_start()函数开启会话后,所有通过$_SESSION操作的会话数据就会自动同步到Redis服务器上。当多个PHP应用实例通过相同的Redis...

    TP3.2的Session的Redis分布式驱动

    标题"TP3.2的Session的Redis分布式驱动"所指的就是为ThinkPHP 3.2.3框架添加一个自定义的Session驱动,使得Session数据能够存储在Redis服务器上,而不是传统的文件系统或者数据库。这有助于在多服务器环境中实现...

    详解PHP使用Redis存储session时的一个Warning定位

    总的来说,定位和解决“PHP使用Redis存储session时的Warning”问题,需要综合考虑PHP配置、Redis服务器状态、网络连接及PHP代码等多个方面。通过逐步排查和调试,通常可以找出问题所在并进行修复。

    PHP中如何使用Redis接管文件存储Session详解

    可以使用PECL扩展`phpredis`,安装完成后需要在PHP代码中实例化Redis对象。 3. **编写Session管理类**:创建一个名为`SessionManager`的类,覆盖PHP的Session保存处理函数。这些函数包括: - `open()`:初始化操作...

    session共享之memcache Redis

    这段代码创建了`Redis`实例,并设置自定义的Session处理函数,使用Redis存储和读取Session数据。 在选择memcache还是Redis时,需要考虑几个因素:性能、数据结构需求、持久化、复制等。memcache更适合简单的key-...

    php Session存储到Redis的方法

    的设置复制代码 代码如下:session.save_handler = redissession.save_path = “tcp://127.0.0.1:6379″修改后重启php-fpm或nginx,phpinfo() session redis如果不想修改php.ini可这样复制代码 代码如下:ini_set(...

    PHP使用Redis替代文件存储Session的方法

    在PHP中使用Redis存储Session,首先需要确保phpredis扩展已安装。phpredis是PHP的一个Redis客户端扩展,它提供了一系列函数来直接与Redis进行交互。phpredis的安装通常需要在服务器上编译PHP源码包,然后启用redis...

    CentOS安装Redis和phpRedis扩展记录

    在本主题中,我们将深入探讨如何在CentOS操作系统上安装Redis服务器,并且集成phpRedis扩展,以便在PHP应用中利用Redis作为持久化数据存储和会话管理。首先,让我们了解Redis的基本概念,然后逐步讲解安装过程。 ...

Global site tag (gtag.js) - Google Analytics