我试图使用下面的PHP代码强制下载.zip存档:
$filePath = BASE_PATH . '/uploads' . $product->mainFile;
header('Pragma: public');
header('Expires: 0');
header('Cache-Control: no-cache');
header('Content-Description: Download');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="crazypatterns_' . $product->id . '.zip"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize($filePath));
此代码适用于所有浏览器和设备...除了iOs上的谷歌浏览器。 在下载页面上尝试下载存档时,会发生错误:"无法确定文件大小"。存档名称是incorect并显示为' login',当下载此文件时,文件大小被错误地确定 - 20-30KB,尽管它的实际大小超过10MB。 屏幕截图发生错误 - http://imgur.com/a/1Gr1L。
P.S。 $ filePath变量是正确的,并且存在给定的归档。 谢谢;)