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


Posted in PHP onApril 05, 2014

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'] = "3water.com"; 
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 学习资料零碎东西
Dec 04 PHP
关于初学PHP时的知识积累总结
Jun 07 PHP
9个经典的PHP代码片段分享
Dec 18 PHP
php+mysql删除指定编号员工信息的方法
Jan 14 PHP
Yii2简单实现多语言配置的方法
Jul 23 PHP
详谈php静态方法及普通方法的区别
Oct 04 PHP
PHP面向对象自动加载机制原理与用法分析
Oct 14 PHP
10个值得深思的PHP面试题
Nov 14 PHP
php实现水印文字和缩略图的方法示例
Dec 29 PHP
php实现数字补零的方法总结
Sep 12 PHP
PhpStorm配置Xdebug调试的方法步骤
Feb 02 PHP
php反射学习之依赖注入示例
Jun 14 PHP
PHP包含文件函数include、include_once、require、require_once区别总结
Apr 05 #PHP
PHP6 中可能会出现的新特性预览
Apr 04 #PHP
php实现水仙花数示例分享
Apr 03 #PHP
PHP抓取、分析国内视频网站的视频信息工具类
Apr 02 #PHP
php 字符串中的\n换行符无效、不能换行的解决方法
Apr 02 #PHP
php警告Creating default object from empty value 问题的解决方法
Apr 02 #PHP
PHP获取栏目的所有子级和孙级栏目的ID号示例
Apr 01 #PHP
You might like
简单的页面缓冲技术
2006/10/09 PHP
php在数组中查找指定值的方法
2015/03/17 PHP
PHP自毁程序(慎用)
2015/07/09 PHP
浅析PHP echo 和 print 语句
2020/06/30 PHP
js继承 Base类的源码解析
2008/12/30 Javascript
JQuery最佳实践之精妙的自定义事件
2010/08/11 Javascript
JavaScript高级程序设计 错误处理与调试学习笔记
2011/09/10 Javascript
JavaScript高级程序设计 读书笔记之十 本地对象Date日期
2012/02/27 Javascript
javascript移动设备Web开发中对touch事件的封装实例
2014/06/05 Javascript
JavaScript实现找出数组中最长的连续数字序列
2014/09/03 Javascript
JavaScript实现生成GUID(全局统一标识符)
2014/09/05 Javascript
innerHTML中标签可以换行的方法汇总
2015/08/14 Javascript
JS实现仿雅虎首页快捷登录入口及导航模块效果
2015/09/19 Javascript
利用浮层使select不可选的实现方法
2016/12/03 Javascript
使用JavaScript为一张图片设置备选路径的方法
2017/01/04 Javascript
vue框架下部署上线后刷新报404问题的解决方案(推荐)
2019/04/03 Javascript
vue轻量级框架无法获取到vue对象解决方法
2019/05/12 Javascript
浅析vue中的provide / inject 有什么用处
2019/11/10 Javascript
js实现聊天对话框
2020/02/08 Javascript
在RedHat系Linux上部署Python的Celery框架的教程
2015/04/07 Python
Python使用迭代器打印螺旋矩阵的思路及代码示例
2016/07/02 Python
Python使用wxPython实现计算器
2018/01/30 Python
python实现代码统计器
2019/09/19 Python
Visual Studio Code搭建django项目的方法步骤
2020/09/17 Python
法学函授自我鉴定
2014/02/06 职场文书
科研课题实施方案
2014/03/18 职场文书
餐饮商业计划书范文
2014/04/29 职场文书
企业诚信承诺书
2014/05/23 职场文书
李开复演讲稿
2014/05/24 职场文书
师范生求职自荐信
2014/06/14 职场文书
2014年党员个人剖析材料
2014/10/08 职场文书
党员带头倡议书
2015/04/29 职场文书
婚育证明格式
2015/06/17 职场文书
2016大学生社会实践心得体会范文
2016/01/14 职场文书
python中__slots__节约内存的具体做法
2021/07/04 Python
使用@Value值注入及配置文件组件扫描
2021/07/09 Java/Android