Centos7,PHP7安裝swoole

 Swoole詳細介紹及如何使用,這裏暫時不作說明,能夠參考一下文檔:https://wiki.swoole.com/php

 

源碼編譯安裝html

下載地址以下:linux

載源代碼包後,在終端進入源碼目錄,執行下面的命令進行編譯和安裝git

cd swoole
phpize
./configure
make 
sudo make install

 

PECL方式安裝

若是pecl尚未安裝,能夠按照以下方式安裝github

//php版本 > 7
$ wget http://pear.php.net/go-pear.phar
$ php go-pear.phar

//php版本 < 7
$ yum install php-pear
//不然會報錯PHP Parse error:  syntax error, unexpected //'new' (T_NEW) in /usr/share/pear/PEAR/Frontend.php on //line 91

  下面開始安裝swooleswoole

pecl install swoole
//報錯以下
//Warning: Invalid argument supplied for foreach() in //Command.php on line 249

  須要修改以下配置:php7

vi `which pecl`
// 找到最後一行 exec $PHP -C -n -q $INCARG -d date.timezone=UTC -d output_buffering=1 -d variables_order=EGPCS -d safe_mode=0 -d register_argc_argv="On" $INCDIR/peclcmd.php "$@" // 去掉 -n 標示,保存退出

  修改完成後,再次安裝ui

pecl install swoole

// 報錯以下
running: phpize
Can't find PHP headers in /usr/include/php
The php-devel package is required for use of this command.
ERROR: `phpize' failed
// 須要安裝 php-devel擴展

  下面安裝php-devel擴展this

yum install php-devel

// 報錯以下
Error: php71w-common conflicts with php-common-5.4.16-43.el7_4.1.x86_64
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

  以上報錯緣由是,linux系統的默認php版本是5.4,當前php版本爲7.1.14,因此在安裝擴展的時候,要指定PHP 版原本安裝擴展,操做以下:spa

// php71w-* 方式安裝擴展

yum install php71w-devel

  以上安裝成功後就能夠繼續安裝swoole了

// 出現以下提示信息,swoole就安裝成功啦

Build process completed successfully
Installing '/usr/lib64/php/modules/swoole.so'
install ok: channel://pecl.php.net/swoole-2.1.3
configuration option "php_ini" is not set to php.ini location
You should add "extension=swoole.so" to php.ini

  最後須要配置php.ini文件,將extension=swoole.so添加進去

// 查找php.ini文件地址
php -i | grep php.ini

Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini

  修改完成後,重啓Apache

systemctl restart httpd

  以下圖,即表示swoole擴展安裝成功

 

 

 

參考地址:http://www.javashuo.com/article/p-axxdnvii-cp.html

相關文章
相關標籤/搜索