PHP中使用memcache存储session的三种配置方法

 更新时间:2014年04月05日 19:50:30   投稿:junjie  
下面简单说下PHP项目分布式部署中,SESSION的同步方案中的一种,使用Memcache来存储SESSION。并总结了三种配置方式,需要的朋友可以参考下

1、直接修改php.ini配置文件

复制代码 代码如下:

session.save_handler = memcache //设置session的储存方式为memcache
memcache.hash_strategy = "consistent"//设置memcache的hash算法
session.save_path = "tcp://127.0.0.100:11211" //设置session储存的位置,多台memcache用逗号隔开,例如:tcp://127.0.0.1:11211,tcp://127.0.0.1:12000

2、利用目录下的 .htaccess 文件配置
复制代码 代码如下:

php_value session.save_handler "memcache"
php_value session.save_path "tcp://127.0.0.1:11211"

说明:这个只是针对Apache的,目前使用Nginx的比较多,也不推荐此方式。

3、在项目的PHP文件中修改配置
复制代码 代码如下:
ini_set("session.save_handler", "memcache");
ini_set("session.save_path", "tcp://127.0.0.100:11211");


4、测试例子
复制代码 代码如下:

//测试session读取是否正常
session_start();
$_SESSION['username'] = "jb51.net";
echo session_id();

//从Memcache中读取session
$m = new Memcache();
$m->connect('localhost', 11211);
//或者这样
//$mem->addServer("127.0.0.1", 11211) or die ("Can't add Memcache server 127.0.0.1:12000");

//根据session_id获取数据

//本机
//$session = $m->get(session_id()); //session_id:d527b6f983bd5e941f9fff318a31206b

//另一台服务器,已知session id
$session = $m->get("d527b6f983bd5e941f9fff318a31206b");

echo $session."<br/>"; //会得到这样的数据:username|s:16:"pandao";,解析一下就可以得到相应的值了
echo session_id()."<br/>";
exit;



上面只是一些简单的说明,其实说点题外话,一般来说,做分布式,那肯定是有服务器权限的,所以推荐第一种。

相关文章

  • PHP 读取文本文件内容并分页显示

    PHP 读取文本文件内容并分页显示

    本文给大家分享的代码非常简单实用,使用php实现读取文本文件内容,并且分页展示出来,有类似需求的小伙伴可以来参考下。
    2016-01-01
  • PHP编写daemon process 实例详解

    PHP编写daemon process 实例详解

    这篇文章主要介绍了PHP编写daemon process 实例详解的相关资料,这里提供实例代码,及详细讲解,需要的朋友可以参考下
    2016-11-11
  • Laravel框架队列原理与用法分析

    Laravel框架队列原理与用法分析

    这篇文章主要介绍了Laravel框架队列原理与用法,结合实例形式分析了Laravel框架队列的原理、使用方法及相关操作注意事项,需要的朋友可以参考下
    2018-09-09
  • php版微信公众平台开发之验证步骤实例详解

    php版微信公众平台开发之验证步骤实例详解

    这篇文章主要介绍了php版微信公众平台开发之验证步骤,结合实例形式详细分析了php微信公众平台验证的操作步骤与相关参数含义,需要的朋友可以参考下
    2016-09-09
  • php实现的支付宝网页支付功能示例【基于TP5框架】

    php实现的支付宝网页支付功能示例【基于TP5框架】

    这篇文章主要介绍了php实现的支付宝网页支付功能,结合实例形式分析了基于TP5框架框架的支付宝网页支付功能具体操作步骤与相关实现技巧,需要的朋友可以参考下
    2019-09-09
  • PHP使用POP3读取邮箱接收邮件的示例代码

    PHP使用POP3读取邮箱接收邮件的示例代码

    这篇文章主要介绍了PHP如何使用POP3读取邮箱接收邮件,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • 使用PHP实现阻止用户上传成人照片或者裸照

    使用PHP实现阻止用户上传成人照片或者裸照

    这篇文章主要介绍了使用PHP实现阻止用户上传成人照片或者裸照,方法和思路都非常的不错,推荐给大家,需要的朋友可以参考下
    2014-12-12
  • laravel5.1框架基础之路由详解

    laravel5.1框架基础之路由详解

    这篇文章主要介绍了laravel5.1框架基础之路由,结合实例形式分析了Laravel框架中路由的概念、原理、基本路由操作与相关注意事项,需要的朋友可以参考下
    2019-09-09
  • Laravel5.5新特性之友好报错以及展示详解

    Laravel5.5新特性之友好报错以及展示详解

    这篇文章主要给大家介绍了关于Laravel5.5新特性之友好报错以及展示的相关资料,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-08-08
  • Yii2.0 模态弹出框+ajax提交表单

    Yii2.0 模态弹出框+ajax提交表单

    这篇文章主要介绍了Yii2.0 模态弹出框+ajax提交表单的实现思路和相关代码,非常简单实用,有需要的小伙伴可以参考下
    2016-05-05

最新评论