Когда я загружаю оригинальный zip-файл, он работает нормально, но когда я загружаю его, используя приведенные ниже заголовки и прочее, он не работает. Я знаю, что лучше пойти по этому пути и сказать браузеру, как обрабатывать файл, а не оставлять его на усмотрение браузера, но я не могу заставить это работать, поэтому я испытываю желание использовать header () вперед.
$path = $this->tru->config->get('root.path').'/Digital Version of Book for Web.zip';
set_time_limit(0);
header("Cache-Control: public");
header("Content-Description: File Transfer");
header('Content-Type: application/zip');
header("Content-Transfer-Encoding: binary");
header('Content-Disposition: attachment; filename="NewFileName.zip"');
header('Content-Length: ' . filesize($path));
$f = fopen($path, 'rb');
fpassthru($f);
fclose($f);
Edit:
Извините, я не имею в виду, что файл загружается в формате zip (все 9,3 МБ), но я не могу распаковать zip, поскольку он недействителен.