编程爱好者之家

centos7安装memcached以及php7的memcached拓展

2018-08-15 14:41:53 698

小编最近买了台阿里云的服务器,缓存安装了memcached,下面是安装过程,希望对大家有帮助

一:安装依赖

1.首先是 memcached,这个扩展需要 libmemcached 客户端库,否则会出现如下错误

checking for libmemcached location… configure: error: memcached support requires libmemcached. 
Use –with-libmemcached-dir=<DIR> to specify the prefix where libmemcached headers and library are located
ERROR: `/var/tmp/memcached/configure –with-libmemcached-dir=no' failed

安装方法如下:

yum install libmemcached libmemcached-devel

2.而 memcache 模块使用了函数 zlib 来支持数据压缩,因此安装此模块需要安装 Zlib 模块。否则会出现如下错误:

checking for the location of zlib… configure: error: memcache support requires ZLIB. Use –with-zlib-dir=<DIR> to specify prefix where ZLIB include and library are located
ERROR: `/var/tmp/memcache/configure –enable-memcache-session=No' failed

安装方法如下:

 yum install zlib zlib-devel

二:下载源码包

  1. 下载libevent2.0.22(我下载的是2.0.22大家可以下载最新版)

    下载地址:http://libevent.org/

    image.png

  2. 下载memcached包

    下载地址:http://memcached.org/

    image.png

  3. 下载php拓展包(我下载的是3.0.4支持php7)

    下载地址:https://pecl.php.net/package/memcached

    image.png

    image.png

    3.0.2,3.0.3也支持php7 我最初用的是2.X版本不支持php7


三,安装详细步骤

首先将三个安装包放到/usr/local目录下

1.安装libevent


    cd /usr/local  #首先进入到该下载包的目录    
    tar zxvf libevent-2.0.22-stable.tar.gz #解压包
    cd libevent-2.0.22-stable #进入到解压的目录
    ./configure --prefix=/usr/local #编译前配置,生成Makefile文件,路径可自行更改
    make; make install #编译+安装

检测是否安装正确

ls -al /usr/local/lib | grep libevent

image.png

出现上图就代表成功了

2.安装memcached

cd /usr/local #首先进入到该下载包的目录
tar zxvf memcached-1.5.10.tar.gz #解压包
cd  memcached-1.5.10 #进入到解压的目录
./configure --with-libevent=/usr/local #编译前配置,生成Makefile文件,路径必须与libevent中一致
make; make install #编译+安装

检测是否安装成功

ls -al /usr/local/bin/memcached

出现下图就代表成功了

image.png


3.安装memcached拓展

cd /usr/local  #首先进入到该下载包的目录
tar zxvf memcached-3.0.4.tgz #解压包
cd memcached-3.0.4 #进入到解压的目录
/usr/local/php/bin/phpize #动态为php添加扩展。phpize路径可能不一致,请根据自己的实际情况
./configure --enable-memcached --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl #php-config请根据自己环境情况填写
make; make install #编译+安装

四:配置php.ini文件

首先通过phpinfo函数,找到php.ini的路径,我的是:/etc/php.ini 

 1.修改extension_dir路径:

extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20160303”

这个要根据你的服务器上的php路径以及extentions里面文件书写

2.再添加如下一行

extension=memcached.so

3.重启php-fpm以及nginx

service php-fpm restart
systemctl restart nginx

再次通过phpinfo查看,出现下图就代表成功了

image.png

同类文章