ArchLinux下PHP安装memcached扩展

因为遇到php报错 Class 'Memcached' not found,才发现php扩展居然有两个,一个memcache,一个memecached。
同时呢,memecached服务本身又刚好与扩展名同名。
于是各种解答就出现了。

用了yaourt,发现有php-memcached存在。直接

sudo yaourt -S php-memcached

安装好后,在/usr/lib/php/modules下,会生成文件memcached.so

在已有的php目录下,如/usr/lib/php56/modules下。建立软链接。同时配置php.ini里面包含一句extension=memcached.so
重启php,结果memcached扩展还是不能用。原来是php版本与memcached.so的版本不一致。
可以直接用downgrade选择合适的版本。如:

sudo downgrade php-memcached

 

也可以到http://pecl.php.net/package/memcached 这里找一个合适版本的。
如:php5.2-5.6对应memcached-2.2.0.tgz 

以下逐行执行。

wget http://pecl.php.net/get/memcached-2.2.0.tgz

tar zxvf memcached-2.2.0.tgz

cd memcached-2.2.0/

phpize // 或phpize56  根据安装的php版本确定

./configure --enable-memcached --enable-memcached-json

make

sudo make install

  

执行完成后,会发现/usr/lib/php56/modules下多了一个memcached.so。配置好php.ini,重启php,完成。


posted @ 2017-06-13 14:24  北里闻箫  阅读(388)  评论(0编辑  收藏  举报