准備:安裝好php后,還需要將PHP的可執行目錄添加到環境變量中。
//打開文件 vi ~/.bashrc
//在文件末尾添加這兩行,保存退出 export PATH=/usr/local/php/bin:$PATH export PATH=/usr/local/php/sbin:$PATH //輸入命令 source ~/.bashrc //查看版本 php -version
Swoole
擴展是按照PHP
標准擴展構建的。使用phpize
來生成編譯檢測腳本,./configure
來做編譯配置檢測,make
進行編譯,make install
進行安裝
Swoole安裝地址:https://github.com/swoole/swoole-src/releases
在 /usr/local/src 存放安裝包
wget -O Swoole-4.4.5.tar.gz https://github.com/swoole/swoole-src/archive/v4.4.5.tar.gz
tar -zxvf Swoole-4.4.5.tar.gz
cp swoole-src-4.4.5 /usr/local/swoole -r
cd /usr/local/swoole/
//phpize的路徑為/usr/local/php/bin/,生成configure文件
/usr/local/php/bin/phpize
./configure
sudo make
sudo make install
//找到文件/usr/local/php/php.ini
vi php.ini
//添加下面一行,保存退出
extension=swoole.so
//復制一份放在php/etc
cp /usr/local/php/php.ini /usr/local/php/etc/
//重啟
ps aux|grep php-fpm
pkill php-fpm
php-fpm
//查看擴展模塊,看到swoole成功
php -m
測試
需要下載netcat和telnet
//安裝Telnet yum install telnet yum install telnet-server
//安裝netcat wget -O netcat https://sourceforge.net/projects/netcat/files/netcat/0.7.1/netcat-0.7.1.tar.gz/download
//解壓 tar -zxvf netcat
//復制,切換路徑 cp netcat /user/local cd /user/local/netcat
//編譯 ./config make make install
//配置 vim /etc/profile
//添加三行內容,wq!保存並退出 # set netcat path export NETCAT_HOME=/opt/netcat export PATH=$PATH:$NETCAT_HOME/bin
//配置生效 source /etc/profile
//檢驗 nc --help
開始:
1、服務器新建文件:vi server.php,添加php代碼,保存退出
<?php //創建Server對象,監聽127.0.0.1:9501 端口 //阿里雲服務器安全組已經打開 $serv = new Swoole\Server("0.0.0.0",9501); //監聽連接進入事件 $serv->on('Connect',function($serv, $fd) {echo "Client:Connect.\n";}); //監聽數據接收事件 $serv->on('Receive',function($serv, $fd, $from_id, $data){$serv->send($fd,"Server:".$data);}); //監聽連接關閉事件 $serv->on('Close',function($serv,$fd) {echo "Client:Close.\n";}); //啟動服務器 $serv->start();
2、鍵入命令:php server.php
3、另外再開一個服務器窗口,鍵入命令:netstat -tunpl | grep 9501。看到listen表示正在監聽。