Apache和PHP下载超时

Apache和PHP下载超时,php,apache,download,Php,Apache,Download,我经营一个为医生提供音频下载的网站。目前,当客户购买播客时,会向他/她显示一个直接的HTML链接以开始下载。该链接指向一个大小为1Gb的ZIP文件。我问的一个问题是,当Apache服务器超时几分钟时,为什么下载可以成功运行几个小时?我假定此超时是服务器处理GET请求并通过输出缓冲区将结果输出发送到浏览器的时间。缓冲区传输给用户可能没有超时。我说得对吗 我的第二个问题是关于PHP超时的。我不喜欢HTML直接链接到下载,就好像URL被其他用户知道一样,他们可以免费下载。一个解决方案可以是使用PHP脚

我经营一个为医生提供音频下载的网站。目前,当客户购买播客时,会向他/她显示一个直接的HTML链接以开始下载。该链接指向一个大小为1Gb的ZIP文件。我问的一个问题是,当Apache服务器超时几分钟时,为什么下载可以成功运行几个小时?我假定此超时是服务器处理GET请求并通过输出缓冲区将结果输出发送到浏览器的时间。缓冲区传输给用户可能没有超时。我说得对吗

我的第二个问题是关于PHP超时的。我不喜欢HTML直接链接到下载,就好像URL被其他用户知道一样,他们可以免费下载。一个解决方案可以是使用PHP脚本传输下载文件,方法是发送适当的头文件,然后发送一个预先加载下载数据的变量的“echo”。我的问题是php.ini文件中的超时是否会影响下载。脚本通常需要30秒才能完成。那么,脚本是否在下载过程中运行?或者,脚本快速完成并将下载数据放入PHP输出缓冲区。如果是后者,缓冲区清空是否有超时


我认为我必须在php.ini中为“内存限制”设置一个较大的值(默认为128Mb),以允许1Gb下载的大小。

尝试设置一个更大的流超时。可以使用phpinfo查看默认值