我正在尝试下载.msi
文件,其实际大小为5.77 MB。当我执行脚本时,下载的文件将丢失一些字节,并将变为4.88 MB。
代码:
$file = 'apps/file.msi';
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 5');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
我甚至尝试使用锚标记和同样的事情。我还将扩展名从.msi
更改为.txt
,并且还从下载的文件中删除了字节。
我无法弄清楚
答案 0 :(得分:0)
试试这个
$file = 'apps/file.msi';
header('Content-Type: application/octet-stream');
header("Content-Transfer-Encoding: Binary");
header("Content-disposition: attachment; filename=\"" . basename($file) . "\"");
readfile($file);
答案 1 :(得分:0)
也许您的服务器配置为gzip传输的内容