寶塔Windows面板PHP安裝Swoole Loader
寶塔Windows面板PHP安裝Swoole Loader
百度大部分教程使用Cygwin,做了N期步驟,誤人子弟。然後就有接下來我在win2012r2系統下安裝寶塔,php7.2安裝Swoole擴展教程。
安裝前確認信息
上傳{swoole-compiler-loader.php}確認信息
下載擴展
下載地址:
下載對應的Swoole Loader擴展,解壓。
寶塔php7.4下正確配置Swoole
先在php7.4版配置下查找
[ioncube]
;zend_extension=php_ioncube.dll
在前面加個;禁用,因為swoole 和ioncube.dll衝突,不能同時使用。
然後按下面步驟安裝:
1 – 點擊下載 windows PHP7.4 Swoole Loader擴展文件
2 – 安裝Swoole Loader
將剛才下載的Swoole Loader擴展文件(php_swoole_loader_php74_nzts_x64.dll)上傳到當前PHP的擴展安裝目錄中:ext
3 – 修改php.ini配置(如已修改配置,請忽略此步驟,不必重複添加)
編輯此PHP配置文件:C:\BtSoft\php\74\php.ini
在此文件底部結尾處加入如下配置並且保存 :extension=php_swoole_loader_php74_nzts_x64.dll
注意:需要名稱和剛才上傳到當前PHP的擴展安裝目錄中的文件名一致
最後 – 重啟PHP或者重啟伺服器,刷新當前頁面即可
PHP通用配置Swoole
解壓出來的Swoole Loader擴展文件{swoole_loader版本號.dll}上傳到當前PHP的擴展安裝目錄中:ext
修改php.ini配置
編輯此PHP配置文件:C:\BtSoft\php\72\php.ini,在此文件底部結尾處加入如下配置
extension=剛才上傳的文件名.dll
需要名稱和剛才上傳到當前PHP的擴展安裝目錄中的文件名一致
最後重載php7.2配置,檢查是否安裝成功。
注意
擴展衝突
由於某些跟蹤調試的 PHP
擴展大量使用了全局變數,可能會導致 Swoole
協程發生崩潰。請關閉以下相關擴展:
- xdebug
- phptrace
- aop
- molten
- xhprof
- phalcon(
Swoole
協程無法運行在phalcon
框架中)
其中 xdebug
和 phptrace
可以用 sdebug 代替;
xhprof
、blackfire
和 molten
可
用 SwooleTracker 代替。
安裝過程中發現與php_phalcon.dll有衝突,記得妥善處理。
======================分隔庫=================
IIS+PHP安裝步驟如下:
第一步下載:swoole官網下載Swoole – PHP 協程框架cygwin-x64,只支持 64 位的系統;或到網盤下載
第二步解壓到指定文件夾:G:\swoole-cli-v5.0.3-cygwin-x64
第三步設置環境變數:把解壓後的文件夾下的 bin 目錄路徑配置到系統的 Path 環境變數中,確定保存
第四步檢查安裝情況:打開CMD命令行輸入:swoole-cli -v,安裝成功
第五步:編寫簡單的WebSocket伺服器代碼:sw.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<?php //創建WebSocket Server對象,監聽0.0.0.0:9502埠。 $ws = new Swoole\WebSocket\Server('0.0.0.0', 9502); //監聽WebSocket連接打開事件。 $ws->on('Open', function ($ws, $request) { echo "Message: {$request->fd} is in!\n"; $ws->push($request->fd, "hello, welcome!xw\n"); }); //監聽WebSocket消息事件。 $ws->on('Message', function ($ws, $frame) { echo "Message: {$frame->data}\n"; $ws->push($frame->fd, "server: {$frame->data}"); }); //監聽WebSocket連接關閉事件。 $ws->on('Close', function ($ws, $fd) { echo "client-{$fd} is closed\n"; }); $ws->start(); |
第六步:編寫簡單的WebSocket客戶端代碼:index.html,客戶端index使用phpstudy虛擬域名指向,配置可以在瀏覽器打開訪問
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
<!doctype html> <html> <head> <meta charset="utf-8"> <title>swoole-cli demo</title> </head> <body> <script> var wsServer = 'ws://127.0.0.1:9502'; var websocket = new WebSocket(wsServer); websocket.onopen = function (evt) { console.log("Connected to WebSocket server."); }; websocket.onclose = function (evt) { console.log("Disconnected"); }; websocket.onmessage = function (evt) { console.log('Retrieved data from server: ' + evt.data); }; websocket.onerror = function (evt, e) { console.log('Error occured: ' + evt.data); }; </script> </body> </html> |
第七步:運行服務端:swoole-cli sw.php;瀏覽器訪問客戶端index.html,完成!
======================分隔庫==============================
LINUX 安裝步驟如下:
1 – 點擊下載 unix PHP7.4 Swoole Loader擴展文件
2 – 安裝Swoole Loader
將剛才下載的Swoole Loader擴展文件(swoole_loader74.so)上傳到當前PHP的擴展安裝目錄中:/www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902
3 – 修改php.ini配置(如已修改配置,請忽略此步驟,不必重複添加)
編輯此PHP配置文件:/www/server/php/74/etc/php.ini
在此文件底部結尾處加入如下配置並且保存 :extension=swoole_loader74.so
注意:需要名稱和剛才上傳到當前PHP的擴展安裝目錄中的文件名一致
4 – 重啟PHP或者重啟伺服器
1. 帶 [親測] 說明源碼已經被站長親測過!
2. 下載後的源碼請在24小時內刪除,僅供學慣用途!
3. 分享目的僅供大家學習和交流,請不要用於商業用途!
4. 本站資源售價只是贊助,收取費用僅維持本站的日常運營所需!
5. 本站所有資源來源於站長上傳和網路,如有侵權請郵件聯繫站長!
6. 沒帶 [親測] 代表站長時間緊促,站長會保持每天更新 [親測] 源碼 !
7. 盜版ripro用戶購買ripro美化無擔保,若設置不成功/不生效我們不支持退款!
8. 本站提供的源碼、模板、插件等等其他資源,都不包含技術服務請大家諒解!
9. 如果你也有好源碼或者教程,可以到審核區發布,分享有金幣獎勵和額外收入!
10.如果您購買了某個產品,而我們還沒來得及更新,請聯繫站長或留言催更,謝謝理解 !
GG資源網 » 寶塔Windows面板PHP安裝Swoole Loader