我使用的是简单的文件下载脚本:PHP,文件下载
if (file_exists($file)) {
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: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
它工作在我的LocalServer高达200MB。
当我在我的网站上试用这段代码时,它下载了173KB而不是200MB的文件。
我检查了一切,写了一些自定义代码(使用ob函数和fread代替readfile)但无法下载大文件。
谢谢你的回答。
- 我使用的Apache 2.2,PHP 5.3
- 所有PHP的设置来处理大文件都OK。 (执行时间,内存限制,...
我的主机,dreamhost有时会杀死消耗太多cpu或资源的脚本。这可能是你的情况。 – nerkn 2011-04-08 13:18:34