在分布式部署的PHP项目中,我们可以使用Memcache来存储SESSION从而达到SESSION的同步。关于PHP的Memcached扩展与Memcached的安装就参考《CentOS下安装Memcached和PHP Memcached扩展》和《在windows系统下安装memcached》这两篇文章。
这里提供三种方法实现使用Memcache来存储SESSION:
1、直接修改php.ini配置文件
session.save_handler = memcache
session.save_path = "tcp://127.0.0.1:11211"
2、利用目录下的 .htaccess 文件
php_value session.save_handler "memcache"
php_value session.save_path "tcp://127.0.0.1:11211"
说明:这个只是针对Apache的,目前使用Nginx的比较多,也不推荐此方式。
3、项目中修改配置
ini_set("session.save_handler", "memcache");
ini_set("session.save_path", "tcp://127.0.0.1:11211");
上面只是一些简单的说明,其实说点题外话,一般来说,做分布式,那肯定是有服务器权限的,所以推荐第一种。