请各位大牛给我诊断一下,以下问题可能是那块错了?
如下采用readfile实现下载的功能,在附件较大时失败;我做过以下尝试:
1. 下载的文件较小时是正常的;
2. 当文件大于128多兆后,则出错;PHP.INI中配置不同表现不同:
a. memory_limit = 128M时,获取的文件大小是0字节,文件是空;
b. memory_limit = -1时,提示网站连接有问题;
其它配置:
max_execution_time = 0
default_socket_timeout = -1
总体感觉缓存不够或什么超时了?请大牛指点一二,谢谢诶
if(file_exists(ROOT_PATH."$url"))
{
$filetype=substr(strrchr($url,'.'),1);
ob_end_clean();
header('Last-Modified: '.gmdate('D, d M Y H:i:s',time()).' GMT');
header('Pragma: no-cache');
header('Content-Encoding: none');
header('Content-Disposition: attachment; filename='."$true_name.$filetype");
header('Content-type: '.$filetype);
header('Content-Length: '.filesize(ROOT_PATH."$url"));
readfile(ROOT_PATH."$url");
exit;
}
难道是最大只支持128M?若是这样,那超过128M的如何实现?