部署提示不支持curl 原

1.  curl下載:http://curl.haxx.se/download.html

2.  wget http://curl.haxx.se/download/curl-7.32.0.tar.gz

     tar zxvf curl-7.32.0.tar.gz      //解壓文件

     cd curl-7.32.0 

     ./configure --prefix=/usr/local/curl


3.   cd  /(php源碼目錄,不是php編譯目錄/ext/curl
 運行phpize: /(php編譯目錄)/bin/phpize

 ./configure --with-php-config=/(php編譯目錄)/bin/php-config  --with-curl=/(curl源碼目錄)

   make && make install

   修改php.ini,增加:extension=curl.so(如果沒有安裝過其他php擴展,則需要同時配置extension_dir="/(php編譯後目錄)/lib/php/extensions/no-debug-non-zts-20121212/",上一個步驟生成.so文件的時候,會輸出extension_dir目錄)

4.   檢驗是否安裝成功:
/(php編譯後目錄)/bin/php -m | grep curl ——正常打印curl,則表示安裝成功(php -m會打印出已安裝的擴展模塊)



踩過的坑:(1)直接在curl的源碼目錄最上層,運行phpize,提示如下錯誤:Cannot find config.m4. Make sure that you run '/home/zhuyx/local/php-5.5.3/bin/phpize' in the top level source directory of the module 原因: phpize擴展安裝,源包需要有config.m4這個配置文件;當前擴展的源碼包不包含(memcache的就包含)。  解決方法:(1)進入php源碼包的 ext/curl 下面運行phpize,再進行安裝(2)./configure --with-php-config=/php編譯後目錄/bin/php-config  --with-curl=curl源碼目錄 問題擴展: 安裝其他的php擴展的時候,遇到類似問題,都可以採取上述解決方案。 (2)關於php.ini 樓主一開始修改的是 php編譯後目錄/lib/php.ini 這個文件,修改之後新增模塊並不生效。後來才知道,前面這個是默認(編譯時候不指定)的擴展配置目錄,如果編譯的時候指定了php.ini的目錄,以後都需要修改指定目錄下的php.ini,例如樓主的是 php編譯後目錄/php.ini 。 (3)調用curl()的php腳本,命令行可以運行,瀏覽器訪問提示如下錯誤: Fatal Error:Call to undefined function curl() 原因: 樓主的服務器是nginx,安裝了curl擴展後,沒有重啓php-fpm導致。 解決方法: 重啓php-fpm. ps aux | grep php-fpm (找到master進程) kill -SIGINT master進程 進入php-5.5.3/sbin,執行  ./php-fpm(啓動)
以上是Linux centos7 php7 編譯安裝 php 擴展包 curl的內容,更多 編譯 擴展 centos7 安裝 Linux PHP7 curl php 的內容,請您使用右上方搜索功能獲取相關信息。


錯誤  Loaded Configuration File	(none)    //加載模塊  配置文件不生效
解決辦法:strace  /usr/local/php/bin/php -i 2> /tmp/1.log
grep 'php.ini' /tmp/1.log
open("/usr/local/php/bin/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/php/lib/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
write(1, "Configuration File (php.ini) Pat"..., 33) = 33

php.ini 拷貝至/usr/local/php/bin/
 但這樣之後phpinfo檢測不到curl    將配置文件拷貝指定的目錄正常  

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章