1.首先我們要安裝swoole擴展的話,需要把它的包下載下來,下載地址是:
https://github.com/swoole/swoole-src
本人qq群也有許多的技術文檔,希望可以為你提供一些幫助(非技術的勿加)。
QQ群: 281442983 (點擊鏈接加入群:http://jq.qq.com/?_wv=1027&k=29LoD19)
2.下載下來之后進行解壓:
unzip swoole-src-master.zip
3.解壓之后打開解壓的目錄,我是解壓在目錄/opt下面的,所以
cd /opt/swoole-src-master
4.然后使用phpize重新編譯php,執行命令:
/usr/bin/phpize
如果你找不到phpize文件在哪,可以用指令查找,最好在根目錄下,這樣它才能從根目錄下開始查找:
find -name phpize
如果你系統沒有安裝phpize的話,執行命令安裝就可以了,指令為:
yum install php-devel
5.然后再進行配置,指令為:
./configure --with-php-config=/usr/bin/php-config
因為我的php-config文件在/usr/bin/下面,所以只要你用自己的php-config路徑就可以了,其他都一致
6.配置好之后,進行編譯安裝:
make && make install
但在這步可能會出現問題:
/usr/include/php/ext/pcre/php_pcre.h:29:18: error: pcre.h: No such file or directory
該錯誤是因為沒有安裝pcre-devel導致的,所有只要安裝下就可以了
yum install pcre-devel
7.安裝好之后會輸出一個路徑,那個就是生成swoole.so的文件路徑,然后配置php.ini,把該路徑配置進去:
extension=/usr/lib/php/modules/swoole.so
8.然后重啟服務器
service httpd restart
通過php -m或phpinfo()來查看是否成功加載了swoole,如果沒有可能是php.ini的路徑不對,可以使用php -i |grep php.ini 來定位到php.ini的絕對路徑。
快速查看當前swoole的版本
php --re swoole|grep VERSION
錯誤解決:
pcre.h: No such file or directory
編譯swoole擴展出現
fatal error: pcre.h: No such file or directory
原因是缺少pcre,需要安裝libpcre
ubuntu/debian:
apt-get install libpcre3 libpcre3-dev
centos/redhat:
yum install pcre-devel
在phpinfo中有在php-m中沒有
編譯安裝完swoole后,在php-fpm/apache的phpinfo頁面中有,在命令行的php -m中沒有。原因可能是cli/php-fpm/apache使用不同的php.ini配置
一、確認php.ini的位置
cli命令行下
php -i|grep php.ini
php-fpm/apache,查看phpinfo頁碼找到php.ini的絕對路徑。
二、查看對應php.ini是否有extension=swoole.so
cat /usr/local/lib/php.ini | grep swoole.so
my_global.h: No such file or directory
PHP缺少mysqln,請檢查php編譯參數。
php -i | grep configure
或者查看phpinfo頁面中的configure項
編譯PHP時,./configure參數中務必要加入
--enable-mysqlnd --with-mysqli
本人qq群也有許多的技術文檔,希望可以為你提供一些幫助(非技術的勿加)。
QQ群: 281442983 (點擊鏈接加入群:http://jq.qq.com/?_wv=1027&k=29LoD19)
我的淘寶店,可以進去逛逛噢:https://shop108912636.taobao.com/index.htm?spm=2013.1.w5001-7867000954.3.1d29318dPlLar7&scene=taobao_shop