PHP5 で再帰的な FTP ダウンロード スクリプトを開発しました。これにより、AJAX 要求を使用してダウンロードするファイルやディレクトリを選択できます。サーバーが受け取る POST 変数は、パイプで区切られた短い文字列であり、メモリをまったく消費しません。
スクリプト自体は、ローカルの Apache セットアップで完全に機能し、各ディレクトリに移動して、すべてのファイルとフォルダーをダウンロードします。
Media Temple の下にセットアップされた私のリモート仮想サーバーでは、スクリプトは大きな構造で失敗しますが、これは私のローカル Apache によって適切に処理されます。
症状は、一部のディレクトリがファイルと見なされるため、スクリプトがそれらのディレクトリにステップインしてさらにダウンロードしないことです。
スクリプトは、パスをリモートで開こうとして、パスがディレクトリであるかどうかを確認します。ディレクトリを開くことができる場合は、終了するまでその中のすべてを再帰的にダウンロードします。
Media Temple でホストされている php.ini のしきい値は、ローカル セットアップのしきい値よりもはるかに高い (最大実行時間が長い、メモリ制限が高いなど) ため、それは問題ではありません...ローカル php を使用してみました。リモート サーバー上の .ini。
通常のホスティングから専用の仮想サーバーに切り替えるまで、「スクリプトヘッダーの早期終了、PHP」を取得するために使用されるエラーログを追跡しました。今は全く反応しません。
私が問題を解決しようとしたのは、php.ini でさまざまな値を試していることです。最近では、作成されたすべての新しいファイルとディレクトリに対して、flush() と ob_flush() を実行しました...発生を止めようとしています。 「スクリプトヘッダーの早期終了、PHP」の。
あなたはなにか考えはありますか?