制御サーバーからリモート マシンで Beanstalk ワーカーを生成しようとしています。
ホスト名、プライベートネットワーク上のSSHをターゲットマシンに取り、そのマシンでコマンドを実行する機能があります。
ワーカーを生成するために使用するコマンド (ターゲット サーバーのプロンプトで手動で実行する場合) は次のとおりです。
nohup /path/to/php /path/to/file/worker.php &
その出力は次のとおりです。
nohup: ignoring input and appending output to `nohup.out'
プロンプトに戻るには、ctrl+c が必要です
リモートマシンからこれを行うと、スクリプトが開始され、そこに座って作業を待つ「worker started」という出力が表示されます。プロンプトに戻るには ctrl+c が必要です。
ブラウザで php を使用してこのコマンドを実行すると、ワーカーが生成されますが、ブラウザがハングアップし、最終的に nginx タイムアウトに達します。これは、コマンドの実行に使用する shell_exec() がコマンドの実行後にプロンプトを待機するためだと思いますが、それには ctrl+c が必要なため、コマンドの実行が終了しなかったと考えられます。
そのコマンドを単独で実行した後、プロンプトに戻すにはどうすればよいですか?