php使用 memcache 来存储 session 方法总结
设置session用memcache来存储
方法i: 在 php.ini 中全局设置
session.save_handler = memcache
session.save_path = tcp://127.0.0.1:11211
方法ii: 某个目录下的 .htaccess
php_value session.save_handler memcache
php_value session.save_path tcp://127.0.0.1:11211
方法iii: 再或者在某个一个应用中
1 ini_set(session.save_handler, memcache); 2 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 。
如果安装的pecl是memcached(依赖libmemcached库的那个扩展),则配置应为
php代码 收藏代码
ini_set(session.save_handler, memcached); // 是memcached不是memcache
ini_set(session.save_path, 127.0.0.1:11211); // 不要tcp:[/b]
代码例子(不依赖libmemcached库的那个)
1
用 sessionid 去 memcached 里查询一下:
?123456
get('19216821213c65cedec65b0883238c278eeb573e077')); $memcache->set('aaaa', 'hello everyone'); var_dump($memcache->get('aaaa')); ?>
会看到
string(37) test|i:1177556731;test3|i:1177556881;
这样的输出,证明 session 正常工作。