安裝環境
在接下來中我將使用安裝有centos7.4
系統的京東雲主機來為大家演示,ps:建議大家使用京東雲來練手安裝,畢竟新手註冊免費送一個月雲主機
- 程式碼包如下所示
[root@JD ~]# pwd /root [root@JD ~]# ls mysoft work [root@JD ~]# cd mysoft/ [root@JD mysoft]# ls php-7.2.4.tar.bz2 swoole-swoole-v2.1.1.zip [root@JD mysoft]#
-
原始碼安裝 php
-
tar -jxvf php-7.2.4.tar.bz2
命令解壓 php-7.2.4.tar.bz2 目錄 -
cd php-7.2.4/
進入 php-7.2.4.tar.bz2 目錄 -
mkdir /usr/local/src/php7.2.4
新建 php 安裝目錄 -
./configure --prefix=/usr/local/src/php7.2.4
檢查配置-
如果報下面的錯 是因為沒有安裝 gcc 使用
yum install gcc*
安裝即可checking for cc... no checking for gcc... no configure: error: in `/root/mysoft/php-7.2.4': configure: error: no acceptable C compiler found in $PATH See `config.log' for more details
-
如果報
error: libxml2 not found
rpm -qa |grep libxml2 檢查是否安裝了libxm包
如果安裝了 就直接yum install libxml2-devel
如果沒有 先yum install libxml2
再yum install libxml2-devel
-
-
make && make install
進行編譯 時間會比較長 -
下面我們來測試一下 建立一個 hello.php 內容為輸出 hello world!
[root@JD ~]# vim hello.php [root@JD ~]# /usr/local/src/php7.2.4/bin/php hello.php hello world! [root@JD ~]#
執行成功
-
改進一下 如果我們直接使用
php hello.php
系統會報錯-bash: php: command not found
vim ~/.bash_profile 如下新增 php 別名即可export PATH alias php=/usr/local/src/php7.2.4/bin/php
別忘了再 source ~/.bash_profile 一下
現在就可以直接使用php hello.php
執行 php 程式碼了 -
現在你可能覺得你的php已經安裝成功了 但是你會發現一個致命問題 你找不到php.ini 檔案
[root@JD ~]# find / -name php.ini [root@JD ~]#
原始碼安裝的話我們需要把 原始碼包裡的 php.ini 檔案複製到我們的安裝目錄
複製到哪裡呢 這時我們可以使用命令php -i |grep php.ini
[root@JD php-7.2.4]# php -i |grep php.ini Configuration File (php.ini) Path => /usr/local/src/php7.2.4/lib
我們可以看見需要我們複製到 lib 目錄
使用 命令cp php.ini-development /usr/local/src/php7.2.4/lib/php.ini
複製成功 -
至此 我們的 php 7.2.4 已經完全安裝成功了
-
- 原始碼安裝swoole
unzip swoole-swoole-v2.1.1.zip
解壓 swoolecd swoole/
進入swoole 目錄/usr/local/src/php7.2.4/bin/phpize
生成configure
檔案- 如果報錯
Cannot find autoconf.
使用命令yum install autoconf
安裝即可
- 如果報錯
./configure --with-php-config=/usr/local/src/php7.2.4/bin/php-config
make && make install
進行編譯- 編譯完成後 在 php.ini 的最後一行加上
extension=swoole.so
php -m |grep swoole
查詢 swoole 是否安裝成功[root@JD lib]# php -m |grep swoole swoole
- swoole 安裝成功
-
嘗試結合php使用swoole
-
swoole 的原始碼包中有很多swoole的demo 例如
swoole/examples/server
目錄下有一個echo.php
-
echo.php
開啟了tcp
服務並監聽了9501
埠 -
netstat -anp |grep 9501
我們檢視9501
埠現在沒有被佔用[root@JD lib]# netstat -anp |grep 9501 [root@JD lib]#
-
php echo.php
現在我們執行 echo.php -
再次檢視
9501
埠已經被 php 佔用了[root@JD lib]# netstat -anp |grep 9501 tcp 0 0 0.0.0.0:9501 0.0.0.0:* LISTEN 27728/php
-
現在我們的swoole的一個簡單的服務就被我們開啟了
-
以後就可以愉快的使用swoole進行開發了
本作品採用《CC 協議》,轉載必須註明作者和本文連結