简述php中实现会话的主要步骤(在memcached管理php的session)PHP教程 / PHP会话管理...

wufei123 发布于 2024-06-15 阅读(7)

PHP的session(会话管理)一般是以文件形式进行,而在多个Web服务器之间进行session管理时memecached会比文件管理方式更加方便在这里介绍如何使用memcached管理PHP的session。

安装在PHP使用memcached的模块有以下2种,在这里使用memcached模块memcache:php-pecl-memcachememcached:php-pecl-memcached(1) 安装memcached及php-pecl-memcached。

# yum install memcached php-pecl-memcached(2) 启动memcached# systemctl enable memcached# systemctl start memcached

修改配置文件通过以下设定PHP的默认session管理会变为memcached(1) php.ini# vi /etc/php.ini; session.save_handler = files # 注释。

; session.save_path = "/var/lib/php/session" # 注释(2) memcached.ini# vi /etc/php.d/memcached.inisession.save_handler = memcached

session.save_path = "tcp://localhost:11211" # 添加(3) www.conf# vi /etc/php-fpm.d/www.conf; php_value[session.save_handler] = files # 注释

; php_value[session.save_path] = /var/lib/php/session # 注释php_value[session.save_handler] = memcached # 添加

php_value[session.save_path] = "localhost:11211" # 添加# systemctl reload php-fpm(4) 在PHP程序里进行设定如果没有修改相关配置文件,可以通过如下方法在PHP程序里进行配置。

$session_save_path = tcp://localhost:11211;if (ini_set(session.save_handler, memcache) && ini_set(session.save_path, $session_save_path)){

session_start;}(5) 确认可以使用安装memcached时安装的memcached-tool# memcached-tool localhost:11211 dump结语PHP的session默认有效期间是24分(1440秒),而这个默认值可以通过/etc/php.ini的session.gc_maxlifetime进行调整。

除了session管理以外也可如下使用memcached$mc = new Memcached;$mc->addServer(localhost, 11211);$mc->set(foo,var,60);。

var_dump($mc->get(foo));$mc->add(hoge,fuga,60);$mc->add(hoge,piyo,60);var_dump($mc->get(hoge));$mc->flush;

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

河南中青旅行社综合资讯 奇遇综合资讯 盛世蓟州综合资讯 综合资讯 游戏百科综合资讯 新闻8682