さまざまなサイトをトラバースしてデータマイニングするスパイダーを構築しています。
各ページを個別に取得する必要があるため、これには非常に長い時間がかかる可能性があります(おそらく100ページ)。set_time_limitを1ページあたり2分に設定しましたが、apacheは5分後にスクリプトを強制終了するようです。
これは、この時間制限のないcronまたは同様のものから実行されるため、通常は問題になりません。ただし、管理者がHTTPインターフェイスを介して手動でフェッチを開始できるようにすることも必要です。
apacheが完全に存続することは重要ではありません。私は、AJAXを使用してフェッチをトリガーし、AJAXで時々チェックバックします。
私の問題は、PHPスクリプトを呼び出すスクリプトが終了したときにフェッチを終了せずに、PHPスクリプト内からフェッチを開始する方法です。
たぶん私はsystem('script.php&')を使うことができますが、それがうまくいくかどうかはわかりません。他のアイデアはありますか?