有時候我們需要讓php支持其他的一些模塊君珠,所以需要我們可以重新編譯php,編譯之前加上模塊的配置參數(shù)娇斑,也可以直接編譯出來一個單獨的模塊策添,我傾向于后者材部,不要重新安裝php,比較方便唯竹。
首先乐导,明確一下這次安裝的模塊是Memcached模塊
Memcached 是一個高性能的分布式內(nèi)存對象緩存系統(tǒng),用于動態(tài)Web應(yīng)用以減輕數(shù)據(jù)
庫負載浸颓。它通過在內(nèi)存中緩存數(shù)據(jù)和對象來減少讀取數(shù)據(jù)庫的次數(shù)物臂,從而提供動態(tài)、
數(shù)據(jù)庫驅(qū)動網(wǎng)站的速度
1. 下載memcache源碼包
php的擴展模塊一般都放在/usr/local/php/ext/文件夾下产上,但是我們安裝好以后棵磷,好像都沒有,所以我們首先創(chuàng)建文件夾
mkdir /usr/local/php/ext
cd /usr/local/php/ext
下載源碼包
wget http://pecl.php.net/get/memcache-2.2.3.tgz
下面這一步的作用是借助php的phpize工具生成configure文件
/usr/local/php/bin/phpize
這一步是借助 php 的 phpize 工具生成 configure 文件晋涣。在這一步你可能會遇到一些錯誤仪媒,比如“Cannot find config.m4”,這是因為系統(tǒng)沒有安裝 m4 工具谢鹊,使用 yum 安裝 yum install -y m4算吩。另外一個錯誤“Cannot find autoconf”,解決辦法是佃扼, yum install -y autoconf偎巢。
2. 然后執(zhí)行編譯配置、編譯松嘶、安裝
在/usr/local/php/ext中執(zhí)行
./configure && make && make install?
然后我發(fā)現(xiàn)艘狭,在當前目錄下生成了一個目錄名叫modules,里面生成了一個文件memcache.so
然后我們?nèi)タ匆幌聀hp的extension_dir的位置翠订,我們就是要將模塊放在這個文件夾下
查看extension_dir的位置
/usr/local/php/bin/php -i | grep extension_dir
我看到的是以下配置
extension_dir => /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226
所以我cd到相應(yīng)的目錄巢音,查看了一下,里面竟然也生成了memcache.so模塊尽超,這樣我們就不用移動模塊了官撼。但是要修改php.ini的配置
vim /usr/local/php/etc/php.ini
在大概889行的位置添加配置如下,但是記得要去掉前面的;注釋符
extension = memcache.so
3. 測試
/usr/local/php/bin/php -m
可以看到列出的模塊中有memcache模塊
4. 補充
當然似谁,我們也能更改extension_dir的目錄位置
vim /usr/local/php/etc/php.ini
在大概736行的位置傲绣,設(shè)置extension_dir=.......
保存后退出即可