#workman が使用できない場合はどうすればよいですか?
workerman の起動失敗現象 1
起動後に報告されるエラーは次のようなものです: php start.php startPHP 警告: stream_socket_server(): tcp://xx.xx.xx.xx:xxxx (アドレスはすでに使用されています) に接続できません (...workerman/Worker.php on line xxxxキーワード: アドレスはすでに使用されています)使用中失敗の理由:
ポートが占有されているため、起動できません。 コマンド netstat -anp | grep portnumber を使用すると、どのプログラムがポートを占有しているかを確認できます。次に、対応するプログラムを停止してポート ソリューションを解放します。 ポートに対応するプログラムを停止できない場合は、ワーカーポートを変更することで問題を解決できます。 Workerman によって占有されているポートを stop コマンドで停止できない場合 (通常は、pid ファイルの損失または開発者によるメイン プロセスの強制終了が原因)、次のコマンドを実行して Workerman プロセスを強制終了できます。 2つのコマンド。 killall phpps aux|grep WorkerMan|awk '{print $2}'|xargs kill -9実際にこのポートをリッスンするプログラムがない場合は、開発者が設定した可能性があります。 in workman 2 つ以上のモニターがあり、モニター ポートが同じです。開発者は、起動スクリプトが同じポートをモニターしているかどうかを確認するように求められます。現象 2起動後に報告されるエラーは次のようなものです: PHP 警告: stream_socket_server(): tcp://xx.xx.xx.xx:xxx (要求されたアドレスを割り当てることができません) に接続できません...workerman/ Worker.php on line xxxx または PHP 警告: stream_socket_server(): tcp://xx.xx.xx.xx:xxxx に接続できません (要求されたアドレスは、その形式で無効です) context) in ...workerman/Worker.php on line xxxxキーワード: 要求されたアドレスを割り当てることができないか、要求されたアドレスが無効です失敗の原因:
起動スクリプトの監視 IP パラメータの記述が間違っています。ローカル IP ではありません。問題を解決するには、ローカル IP を入力するか、0.0.0.0 (ローカル マシンのすべての IP が監視されていることを示します) を入力してください。 ヒント: Linux システムでは、ifconfig コマンドを使用して、マシンのすべてのネットワーク カード IP を表示できます。 あなたがクラウド サーバー (Alibaba Cloud/Tencent Cloud など) ユーザーの場合、パブリック ネットワーク IP は実際にはプロキシ IP (Alibaba Cloud のプライベート ネットワークなど) である可能性があることに注意してください。 IP は現在のサーバーに属していないため、パブリック ネットワーク IP を通じて監視することはできません。パブリック ネットワーク IP を使用して監視することはできませんが、0.0.0.0 を介してバインドすることはできます。現象 3Waring stream_socket_server はセキュリティ上の理由で無効になっています...失敗の理由:
stream_socket_server 関数が php.ini によって無効になっています解決策1. php --ini を実行して php.ini ファイルを見つけます 2. php.ini を開いて disable_functions 項目を見つけ、stream_socket_server の無効な項目を削除します。 現象 4PHP 警告: stream_socket_server( ): tcp://0.0.0.0:xxx に接続できません (許可が拒否されました)失敗の理由
Linux でのリスニング ポートが 1024 未満の場合、 root権限が必要です。 解決策1024 より大きいポートを使用するか、root ユーザーを使用してサービスを開始します。 推奨:以上がワーカーマンが使えない場合はどうすればいいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。