Home  >  Article  >  Backend Development  >  centos系统为php安装memcached扩展

centos系统为php安装memcached扩展

WBOY
WBOYOriginal
2016-06-23 13:49:391163browse

1. 通过yum安装
yum -y install memcached
#安装完成后执行:
memcached -h
#出现memcached帮助信息说明安装成功

2. 加入启动服务
chkconfig --level 2345 memcached on

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

4. 安装libmemached
wget https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz
tar -zxvf libmemcached-1.0.16.tar.gz
cd libmemcached-1.0.16
./configure -prefix=/usr/local/libmemcached -with-memcached
make && make install

报错:g++: command not found的解决
yum -y install gcc+ gcc-c++
make clean后,重新执行:make && make install

5. 安装php-devel
yum install php-devel

6. 安装PHP Memcached扩展
wget http://pecl.php.net/get/memcached-2.1.0.tgz
tar -zxvf memcached-2.1.0.tgz
cd memcached-2.1.0
/usr/local/php/bin/phpize
./configure -enable-memcached -with-php-config=/usr/local/php/bin/php-config -with-zlib-dir -with-libmemcached-dir=/usr/local/libmemcached -prefix=/usr/local/phpmemcached
make && make install

报错:memcache support requires ZLIB解决办法  
yum install zlib-devel

记录下安装成功后的提示,类似于:
Installing shared extensions: /usr/lib/php/modules/

7.增加扩展extension配置文件
vi /etc/php.d/memcached.ini
增加1行
extension=memcached.so
最后验证一下是否安装完成
php -m|grep memcached
应该会显示memcached

8.重启nginx/amapche,重启php-fpm,使用phpinfo()查看memcached模块是否安装成功。


****************************************************************************************

memcached能启动但无法用php连接的问题(浏览器打开包含memcached的页面,firebug报500错误)
1.SELINUX=enforcing 改为 SELINUX=disabled
2.在终端尝试使用:telnet localhost 11211或者telnet 127.0.0.1 11211来连接到memcached的服务器
如果提示bash: telnet: command not found
执行:yum install telnet -y,再次回到浏览器尝试打开。

测试脚本:

<?php $m = new Memcached;$m->addServer('127.0.0.1', 11211);$m->set('foo', 200);var_dump($m->get('foo'));?>


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn