首页 > 代码库 > apache+PHP使用memcached储存session信息

apache+PHP使用memcached储存session信息

需求:

Apache使用php支持memcached储存session信息

**以下apachephpmemcached均使用yum方式安装,如有特殊需求使用源码包安装时,配置方式与此不同

 

关闭防火墙和SElinux安全机制

service iptables stop

setenforce 0

 

1.安装部署apache

使用系统自带的apache即可

修改apache配置文件以支持php

vim /etc/httpd/conf/httpd.conf

402 DirectoryIndexindex.html index.html.var index.php

 

启动apache

service httpd start

 

2.安装php

有特殊需求可用源码包安装,在此实验使用yum安装即可

yum -y install php php-devel

 

3.建立测试页面,测试apachephp的结合

vim /var/www/html/index.php

<?php

phpinfo();

?>

 

使用浏览器访问http://192.168.1.11,出现以下页面

技术分享

 

4.安装部署memcached

使用yum方式安装

yum -y install memcached

 

#安装完成后执行
memcached -h 
#
出现memcached帮助信息说明安装成功

Memcached的配置信息:

vim /etc/sysconfig/memcached 
#
文件中内容如下,按需要修改
PORT="11211"         #
端口 
USER="root"             #
用户名 
MAXCONN="1024"         #
最大连接数 
CACHESIZE="64"         #
内存大小 
OPTIONS=""                 #
附加参数

 

5.安装php支持memcached模块

需要安装libmemcached客户端库,php的扩展memcached模块,因为该扩展是依赖libmemcachedAPI

 

安装libmemcached客户端库

tar xf libmemcached-1.0.18.tar.gz

cd libmemcached-1.0.18

./configure -prefix=/usr/local/libmemcached -with-memcached

make &&make install

安装php的扩展memcached模块

tar xf memcached-2.2.0.tgz

cd memcached-2.2.0

/usr/bin/phpize   //先使用phpize命令生成一个configure文件

./configure-enable-memcached -with-php-config=/usr/bin/php-config -with-zlib-dir -with-libmemcached-dir=/usr/local/libmemcached -prefix=/usr/local/phpmemcached --disable-memcached-sasl

make &&make install

 

记录下安装成功后的提示,类似于:

Installing sharedextensions:     /usr/lib64/php/modules/

增加扩展extension配置文件

vim /etc/php.d/memcached.ini    //此配置文件需要手动创建

extension=memcached.so

 

执行php –m命令查看是否加载了memcached模块

 

6.启动apachememcached

service httpd restart  //重启apache服务

/usr/bin/memcached  -u root -m 512M -n 10 -f 2 -d -vvv -c 512  //启动memcached服务

可以安装telnet服务测试一下memcached服务是否正常

yum –y install telnet

telnet localhost 11211

 

7.建立测试页,测试php是否支持memcached读取session信息

vim /var/www/html/memcached.php

<?php

session_start();

if(!isset($_SESSION[‘test‘])){

$_SESSION[‘test‘]= time();

}

print$_SESSION[‘test‘];

print"<br><br>";

print"SessionID: " . session_id();

?>

 

使用浏览器访问http://192.168.1.11/memcached.php,出现以下页面;

技术分享

本文出自 “lyndon” 博客,请务必保留此出处http://lyndon.blog.51cto.com/11474010/1950475

apache+PHP使用memcached储存session信息