php使用memcache存储session 服务器配置方法

Memcached-1.4.4-14 For Win32 or Win64
http://my.oschina.net/u/205403/blog/390256


查看 php.ini 可见 session 的默认存储方式是 files,如下

session.save_handler = files

session 的默认存储路径为
对于windows为:C:/Windows/Temp
对于linux为:未知

# windows平台
session.save_path = "N:/path"

# linux平台
session.save_path = "/path"


我们知道是用 files 文件系统来存储的话,每次 session 时都会生成一个文件,效率很低下,如果服务器上安装了 memcache ,那么务必要迁移到 memcache 来存储 session,做法如下:


方法一(服务器上修改):php.ini 中全局设置

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

方法二(FTP上修改): 在网站跟目录下的 .htaccess

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

备注:后面的值加不加英文双引号都行

方法三(程序上修改): 某一个应用程序中

ini_set("session.save_handler", "memcache");  
ini_set("session.save_path", "tcp://127.0.0.1:11211");


使用多个 memcached server 时用英文逗号","隔开,并且和 Memcache::addServer() 文档中说明的一样,可以带额外的参数"persistent"、"weight"、"timeout"、"retry_interval" 等等,类似这样的:

php_value session.save_path = tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2


以上文档参考:http://koda.iteye.com/blog/466667

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。