多台服务器时session不能共享,可以将session内容存在memcache里。查了一下资料,说memcache的新版本可以简单的配置一下php.ini,就可以直接达到目的了。

我在memcache-2.2.1版本下测试通过。

//或者也可以直接在php应用里写:
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” 等等,类似这样的:

 "tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2" 。

这样修改后,能按正常一样的使用session。

直接改php.ini更好。

//修改php.ini
session.save_handler = memcache
session.save_path = "tcp://127.0.0.1:11211"

如果没有安装memcache PECL 扩展,可以用这个类。 http://imysql.cn/?q=node/215

我在本地测试通过了。

php/memcach实现session.txt · 最后更改: 2007/12/26 21:25 由 61.135.178.250
到顶部
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0 红麦软件 红麦软件