解決PHP編譯cURL的reinstall the libcurl問題
今天正好要用到PHP的curl功能,探索服務器上的PHP並沒有配置curl,進而查詢PHP官方文檔,得知編譯PHP時需要帶上 –with-curl參數,才能把curl模組編譯進去。我現在PHP已經編譯安裝進伺服器了,不想再重新編譯了,於是參考下面有網友評論的辦法,單獨編譯curl模組,然後make install。
首先需要下載官方的PHP原始碼,然後定位到擴充目錄下的curl,舊版本的PHP擴充目錄可能是extensions,新版應該是ext。
cd /tmp
wget http://cn.php.net/get/php-5.3.10.tar.bz2/from/cn2.php.net/mirror
mv mirror php-5.3.10.tar.bz2
tar vxf php-5.3.10.tar.bz2
cd php-5.3.10/ext/curl
phpize
./configure
make install
上面的步驟做完後,再到php.ini添加extension = curl.so,可是我在做到./configure出現下面的錯誤提示:
configure: error: Please reinstall the libcurl distribution -
easy.h should be in /include/curl/
基本上確定是丟失了什麼包所致,上網搜尋得到需要事先安裝的依賴包。
# RetHat CentOS or Fedora 使用下面安裝命令
yum install curl curl-devel
# Debian or Ubuntu使用下面的安裝命令
apt-get install curl
apt-get install libcurl4-gnutls-dev
不過在搜尋的過程中我發現了更方便的辦法,在Debian環境下由於我的PHP是通過apt-get擷取的,那麼同樣的curl也可以通過apt-get命令擷取:
apt-get install curl
apt-get install php5-curl
呵呵,看來這樣方便省事多了,於是就這樣安裝了,之前的辦法就不考慮那,簡單最好:-)
最後不要忘記使用invoke-rc.d php-cgi restart重啟PHP CGI。