服務器運行一段時間後可能突然會需求添加某個擴展如curlpdoxmlrpc等這就需要在不重新編譯PHP的情況下獨立添加擴展
下面以安裝curl為例介紹具體安裝步驟
安裝crul wget targz tar zxvf curltargz cd curl /configure prefix=/usr/local/curl
make
make install
編譯生成擴展進入php源程序目錄中的ext目錄中這裡存放著各個擴展模塊的源代碼選擇你需要的模塊比如curl模塊
cd curl
執行phpize生成編譯文件phpize在PHP安裝目錄的bin目錄下
/usr/local/php/bin/phpize
運行時可能會報錯Cannot find autoconf Please check your autoconf installation and the $PHP_AUTOCONF environment variable is set correctly and then rerun this script需要安裝autoconf
yum install autoconf(RedHat或者CentOS)aptget install autoconf(Ubuntu Linux)
生成配置文件並編譯生成模塊
/usr/local/php/bin/phpize
/configure withcurl=/usr/local/curl withphpconfig=/usr/local/php/bin/phpconfig
make
make install
這樣curlso就被復制到PHP對應目錄(如/usr/local/php/lib/php/extensions/nodebugnonzts/)
修改配置在phpini裡設置擴展目錄
extension_dir = /usr/local/php/lib/php/extensions/nodebugnonzts/
並添加擴展模塊引用
extension = curlso
檢查並重啟Apache
/usr/local/php/bin/php v
執行這個命令時php會去檢查配置文件是否正確如果有配置錯誤這裡會報錯可以根據錯誤信息去排查
From:http://tw.wingwit.com/Article/program/PHP/201311/20774.html