Linux下獨(dú)立添加PHP擴(kuò)展模塊
服務(wù)器運(yùn)行一段時(shí)間后,可能突然會需求添加某個(gè)擴(kuò)展,如curl、pdo、xmlrpc等,這就需要在不重新編譯PHP的情況下獨(dú)立添加擴(kuò)展。
下面以安裝curl為例,介紹具體安裝步驟。
1.安裝crul wget http://curl.haxx.se/download/curl-7.19.6.tar.gz tar -zxvf curl-7.19.6.tar.gz cd curl-7.19.6 ./configure --prefix=/usr/local/curl
make
make install
2.編譯生成擴(kuò)展進(jìn)入php源程序目錄中的ext目錄中,這里存放著各個(gè)擴(kuò)展模塊的源代碼,選擇你需要的模塊,比如curl模塊:
cd curl
執(zhí)行phpize生成編譯文件,phpize在PHP安裝目錄的bin目錄下
/usr/local/php5/bin/phpize
運(yùn)行時(shí),可能會報(bào)錯: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)、apt-get install autoconf(Ubuntu Linux)
生成配置文件,并編譯生成模塊:
/usr/local/php5/bin/phpize
./configure --with-curl=/usr/local/curl --with-php-config=/usr/local/php5/bin/php-config
make
make install
這樣,curl.so就被復(fù)制到PHP對應(yīng)目錄(如:/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/)
3.修改配置在php.ini里,設(shè)置擴(kuò)展目錄:
extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/"
并添加擴(kuò)展模塊引用:
extension = curl.so
4.檢查并重啟Apache
/usr/local/php/bin/php -v
執(zhí)行這個(gè)命令時(shí),php會去檢查配置文件是否正確,如果有配置錯誤,這里會報(bào)錯,可以根據(jù)錯誤信息去排查。
【編輯推薦】