Linuxでいくつかのコマンドを起動するためにexecを使用するPHPスクリプトがあります。それは5分後に死ぬことになっている単純なwgetです。私が直面している問題は、wgetの実際のPIDを殺すまでスクリプトが実行されていないのでControl + cを実行している場合です。私はpcntl_signalを使って、exec/system/shell_execなどを使ってみましたが、どれも働いていませんでした。私が使用していたコードは次のとおりです。すべてのPHPスクリプトがコントロールで死ぬことはありません
<?PHP
system('/usr/bin/timeout 300 wget -c --tries=0 --read-timeout=200 -O /tmp/ll.mp3 http://15323.live.streamtheworld.com:80/WABCAM_SC');
?>
これは、 'wget'ではなく'/usr/bin/timeout'を強制終了するからだと思います。 'pcntl_signal'コードを共有するのを忘れた: - ? –
それは(私はちょうどタイムアウトを殺している)妥当と思われる。私はPHPでset_time_limitを使用したかったが、それは私のスクリプト全体を殺すだろう。私はwgetがX時間後に終了するようにしたい。また、私のpcntlコードを以下で見ることができます。 –