为什么我的网站开始下载需要这么长时间?

时间:2012-03-15 03:07:44

标签: php performance download

我有一个服务器上有数百个音频文件(顺便说一句,我拥有所有这些文件),人们可以免费下载它们。我使用以下PHP脚本下载文件:

<?php
header('Content-disposition: attachment; filename=audio.mp3');
header('Content-type: audio/mpeg');
readfile('Part1.mp3');

然而,我的观众抱怨说,下载开始可能需要30秒才能完成。我该怎么做才能提高下载的初始化速度?有可能吗?

其他信息:

我的网站由iPage托管。

1 个答案:

答案 0 :(得分:5)

不是使用readfile()将整个文件读入内存并发送它,而是以块的形式读取它,在读取时回显每个块,然后在每个块之后刷新。更好的是,看看mod_xsendfile或它的等价物是否可用,并用它来发送文件。