Swoole は PHP の拡張機能であるため、Swoole をインストールすることは基本的に PHP 拡張機能をインストールすることになります。 Swoole は、Linux、FreeBSD、MacOS の 3 つのオペレーティング システムのみをサポートします。
推奨チュートリアル: 「thinkphp」 「swoole チュートリアル」
インストール準備
インストールの前に次のソフトウェアがシステムにインストールされていることを確認する必要があります。
php-7.1 或更高版本 gcc-4.8 或更高版本 make autoconf
通常、最初の 3 つはインストールされており、autoconf ツールをインストールする必要があります。
Linux:yum install autoconf Mac:brew install autoconf
PHP 用の Swoole 拡張機能をインストールします
1. Swoole をダウンロードします
ダウンロード アドレス: https://github.com/swoole/swoole- src /releases
通常の状況では、最新バージョンをダウンロードします。
2. PHP 拡張ディレクトリに解凍します。たとえば、解凍パスは次のとおりです:
/Applications/MAMP/bin/php/php7.2.10/include/php/ext/
解凍されたディレクトリには swoole という名前を付けることができます。
3. 解凍したswooleディレクトリに入りphpizeコマンドを実行します 環境変数にコマンドが追加されていない場合は絶対パスで実行できます
sudo /Applications/MAMP/bin/php/php7.2.10/bin/phpize
私の環境には複数のPHPがあるのでコンピュータのバージョンが異なるため、現在使用しているバージョンを指定してコマンドを実行しました。
コマンド パス: /php インストール ディレクトリ/bin/phpize
4. コマンド実行:
./configure --with-php-config=/Applications/MAMP/bin/php/php7.2.10/bin/php-config --enable-openss --enable-http2
具体的なパスは実際の状況に応じて変更されます。
5. コマンドの実行後:
make && make install
成功すると、インストール アドレスが表示されます。たとえば、私のアドレスは次のとおりです:
/Applications/MAMP/bin/php/php7.2.10/lib/php/extensions/no-debug-non-zts-20170718/
このディレクトリに入り、存在するかどうかを確認します。中には腫れ物が入っています。
6. swoole 拡張機能を php.ini に追加します。
現在使用している PHP バージョンの構成ファイルを必ず選択してください。このファイルは、php --ini コマンドを使用して表示できます。私の場所は次のとおりです:
/Applications/MAMP/bin/php/php7.2.10/conf/php.ini
php.ini ファイルを開いて拡張子を追加します:
extension=”/Applications/MAMP/bin/php/php7.2.10/lib/php/extensions/no-debug-non-zts-20170718/swoole.so”
MAMP 統合環境を使用している場合は、上記の php.ini ファイルを変更するだけでなく、統合環境の動的構成 php.ini ファイルを変更する必要がある場合は、パネルの php オプションでバージョンの後の矢印をクリックするか、ファイル -> テンプレートの編集 -> PHP -> PHP 7.xx -> をクリックします。 php.ini を変更します。
7. インストールが完了したら、コマンド
php -m
を実行して、リストに swoole モジュールがあるかどうかを確認し、あればインストールは成功です。
php --ri swoole コマンドを実行して、swoole 関連情報を表示します。
8. テスト
次のパスを入力し、実際の状況に応じて変更します:
/Applications/MAMP/bin/php/php7.2.10/include/php/ext/swoole/examples/server
その中にecho.phpファイルがあるので、それを開きます。次のコード行が表示されます。
$serv = new swoole_server("0.0.0.0", 9501);
はすべての IP をリッスンすることを意味し、ポート番号は 9501 です。
コマンド ラインで、次のコマンドを入力します:
php echo.php
コマンドが実行されており、カーソルがなく、エラーが報告されない場合は、新しいコマンド ウィンドウを作成して次のコマンドを入力します。 command:
Linux: netstat -anp | grep 9501 Mac: ps -ef | grep 9501
このプロセスはすでに実行されており、pid プロセス番号を持っていることがわかります。テストは成功しました。
ThinkPHP フレームワークに Think-Swoole 拡張機能をインストールする
PHP 拡張機能をインストールした後、フレームワークに拡張機能をインストールする必要があります。
まず、ThinkPHP フレームワークをダウンロードする必要があります (Think-Swoole 拡張機能は現在、ThinkPHP 5.1 と ThinkPHP 6 をサポートしています。いくつかの新しい機能をデモンストレーションするために、以降の記事では最新の ThinkPHP 6 フレームワークを使用します)。次に、フレームワークに移動します。 ルート ディレクトリで Think-Swoole インストール コマンドを実行します。
ThinkPHP 5.1 インストール コマンド
ThinkPHP 6 インストール コマンド
インストールが完了したら、次のコマンドを実行します。コマンド:
php think swoole
下の図のプロンプトが表示された場合、プラグインは正常に使用できます:
エラー 1:
上記のコマンドをインストールして実行したときにエラーが報告されました。Xdebug プラグインが使用できないことを示すエラー メッセージが表示されるので、そのまま閉じてください。 MAMP 環境では、php オプションで直接オフにすることができます。
エラー 2:
[Swoole\Exception] failed to listen server port[127.0.0.1:80], Error: Permission denied[13]
app/config/swoole.php を開くと、ポートがポート 80 に対応していることがわかります。Linux と Mac では、スーパー管理者だけがポート 1024 以下を持っているためです。アクセス許可を使用して、ポートを 9501 に変更できるようにします (デフォルトのホストは 127.0.0.1 で、これはローカル アドレスを監視することを意味しますが、ここでは 0.0.0.0 に変更され、これはすべてのアドレスを監視することを意味します)。
swoole サービスがオンになったら、テストしてみましょう。ブラウザに 127.0.0.1:9501 と入力すると、通常どおりアクセスできます:
同時に、これは、Swoole には、Apache や Nginx に相当する http サービスを開くのに役立つ HTTP サーバーが付属していることも示しています。
この時点で、Think-Swoole プラグインのインストールは完了です。
以上がThink-Swoole チュートリアルのインストールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。