以下に示すように PHP でダウンロード スクリプトを作成しました。スクリプトはファイルを正しくダウンロードしていますが、ブラウザ (クロム) の進行状況バーが定期的に適切に更新されていないと感じています。
私のファイルのサイズは 320MB ですが、そのファイルのダウンロード中に進行状況が「11MB、76MB、200Mb & 320MB」または「70MB & 320MB」などのようにランダムに更新されます。
ほとんどのサイトでは、ダウンロードの進行状況の更新は、MB ごとのように一定のチャンクで行われているため、追加のヘッダーなどを送信して、進行状況の更新間隔を制御する方法を知りたいです。
進行状況を一定間隔で更新してユーザーエクスペリエンスを向上させたいので、この状況を適切に処理するのを手伝ってください。
// ZIP ファイル ダウンロード用の HTTP ヘッダー
// http://perishablepress.com/press/2010/11/17/http-headers-file-downloads/
// ファイル変数
$filename = "Movie Tunes.zip";
$filepath = "ファイル/";
// zip ダウンロードの http ヘッダー
header("プラグマ: public");
header("有効期限: 0");
header("Cache-Control: public,must-revalidate, post-check=0, pre-check=0");
header("Content-Description: ファイル転送"); // MIME
header("コンテンツ タイプ: アプリケーション/オクテット ストリーム");
header("Content-Disposition: attachment; filename=\"".$filename."\"");
header("Content-Transfer-Encoding: バイナリ"); // MIME
header("Content-Length: ".filesize($filepath.$filename));
ob_end_flush();
@readfile($filepath.$filename);
ありがとう、
シヴァ