这是我的问题。我正在尝试使用标头下载文件。这是我的代码:
$content_type = mime_content_type('uploads/MyBBIntegrator_v1.3.1.zip');
$file = 'uploads/MyBBIntegrator_v1.3.1.zip';
header("Cache-Control: public");
header('Content-type: application/octet-stream');
header("Content-Description: File Transfer");
header('Content-Disposition: attachment; filename="MyBBIntegrator_v1.3.1.zip');
header("Content-Transfer-Encoding: binary");
header('Expires: 0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile('uploads/MyBBIntegrator_v1.3.1.zip');
但是,这样做的唯一结果是页面显示文件的内容(它是一个文本文件)或一串奇怪的符号,如果文件是 image/zip/exe 等
我应该怎么做才能解决这个问题?
首先,mime_content_type()
已被弃用,您应该尝试另一种方法来获取 MIME 值。
我已经检查了您的代码,它在我的服务器上运行良好,对我来说也很好用。您应该检查可能会阻止下载的 INI 指令。尝试全新安装服务器。
此外,在您放入问题的代码段之前,脚本不应生成任何输出。