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安装攻略:常见问题解答(一)
Oct 09 PHP
JS 网站性能优化笔记
May 24 PHP
php实现12306余票查询、价格查询示例
Apr 17 PHP
linux下使用crontab实现定时PHP计划任务失败的原因分析
Jul 05 PHP
PHP实现生成透明背景的PNG缩略图函数分享
Jul 08 PHP
php自动载入类用法实例分析
Jun 24 PHP
PHP+Mysql无刷新问答评论系统(源码)
Dec 20 PHP
php使用Jpgraph创建3D饼形图效果示例
Feb 15 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
Jun 06 PHP
php微信公众号开发之二级菜单
Oct 20 PHP
对laravel in 查询的使用方法详解
Oct 09 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
Feb 29 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
windows下apache搭建php开发环境
2015/08/27 PHP
PHP数组生成XML格式数据的封装类实例
2016/11/10 PHP
Yii2语言国际化自动配置详解
2018/08/22 PHP
jQuery 学习 几种常用方法
2009/06/11 Javascript
Javascript实现仿WebQQ界面的“浮云”兼容 IE7以上版本及FF
2011/04/27 Javascript
input 输入框获得/失去焦点时隐藏/显示文字(jquery版)
2013/04/02 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
jQuery标签编辑插件Tagit使用指南
2015/04/21 Javascript
Javascript将JSON日期格式化
2016/08/23 Javascript
JavaScript设计模式之单体模式全面解析
2016/09/09 Javascript
Angular.js自定义指令学习笔记实例
2017/02/24 Javascript
JavaScript标准对象_动力节点Java学院整理
2017/06/27 Javascript
Vue-router 类似Vuex实现组件化开发的示例
2017/09/15 Javascript
vue小白入门教程
2018/04/02 Javascript
原生javascript AJAX 三级联动的实现代码
2018/05/04 Javascript
基于NodeJS开发钉钉回调接口实现AES-CBC加解密
2020/08/20 NodeJs
[51:53]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第二场 11.01
2020/11/02 DOTA
详细讲解用Python发送SMTP邮件的教程
2015/04/29 Python
详解python时间模块中的datetime模块
2016/01/13 Python
python监控进程状态,记录重启时间及进程号的实例
2019/07/15 Python
Python3的高阶函数map,reduce,filter的示例详解
2019/07/23 Python
python中的subprocess.Popen()使用详解
2019/12/25 Python
python实现Pyecharts实现动态地图(Map、Geo)
2020/03/25 Python
Django框架获取form表单数据方式总结
2020/04/22 Python
Python读入mnist二进制图像文件并显示实例
2020/04/24 Python
简述 Python 的类和对象
2020/08/21 Python
年终总结会主持词
2014/03/25 职场文书
地球一小时倡议书
2014/04/15 职场文书
管理岗位竞聘演讲稿
2014/08/18 职场文书
2014年挂职干部工作总结
2014/12/06 职场文书
大学生党员自我评价
2015/03/04 职场文书
python 制作一个gui界面的翻译工具
2021/05/14 Python
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python
Python编程根据字典列表相同键的值进行合并
2021/10/05 Python
Django+Nginx+uWSGI 定时任务的实现方法
2022/01/22 Python