我正在使用PHP的jQuery。 我用PHP编写了一个简单的下载函数:
function downloadFile($sFile){
#Main function
header('Content-Type: '.mime_content_type($sFile));
header('Content-Description: File Transfer');
header('Content-Length: ' . filesize($sFile));
header('Content-Disposition: attachment; filename="' . basename($sFile) . '"');
readfile($sFile);
}
我可以通过这个脚本下载文件,但如果它是一个大文件(如1GB),readfile函数需要他的时间,直到下载开始。所以我必须等待一分钟左右,直到下载真正开始。 知道如何优化我的脚本,所以立即开始下载吗?
答案 0 :(得分:0)
您可以配置Apache以在.htaccess
文件中设置正确的标头。然后,您可以直接链接到文件而不是PHP页面。这也会减少服务器负载。
当然,如果PHP脚本执行的功能不仅仅是设置标题(例如身份验证),那么这不是一个选项。您必须以@ N.B的形式通过PHP传递文件。提及他的评论。