Php readfile()有时会在文件结束之前停止

Php readfile()有时会在文件结束之前停止,php,filesize,readfile,Php,Filesize,Readfile,我有一个脚本,它发送一个ZIP文件。它是一个12MB的大文件,但有时,在极少数情况下,下载会停止在4MB、5MB、6.5MB(从不相同) 在什么情况下,readfile()可以在读取所有文件之前停止?还有什么问题吗?一定是服务器延迟或带宽问题是的,还考虑了时间限制。它的值是多少(做一个php_info())?它被设置为120秒。我确实按照@RezaSh的建议设置了时间限制(0),并将等待进一步的失败。这似乎是一个与主机相关的暂时性问题。 <?php $fullpath = 'foob

我有一个脚本,它发送一个ZIP文件。它是一个12MB的大文件,但有时,在极少数情况下,下载会停止在4MB、5MB、6.5MB(从不相同)



在什么情况下,readfile()可以在读取所有文件之前停止?还有什么问题吗?

一定是服务器延迟或带宽问题是的,还考虑了时间限制。它的值是多少(做一个php_info())?它被设置为120秒。我确实按照@RezaSh的建议设置了时间限制(0),并将等待进一步的失败。这似乎是一个与主机相关的暂时性问题。
<?php

$fullpath = 'foobar.zip';

header('Content-Description: File Transfer');
header('Content-Type: application/zip');
header('Content-Disposition: attachment; filename=' . $fullpath);
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: '. filesize($fullpath));
ob_clean();
flush();
readfile($fullpath);
exit();

?>