通过下载链接提供下载文件的最佳方法是什么?

时间:2012-06-27 23:31:15

标签: php curl download fopen file-get-contents

  

可能重复:
  Sending large files reliably in PHP

我将发布一个PHP脚本,该脚本使人们可以通过屏蔽URL从服务器向其客户端提供可下载的产品(不想泄露服务器上的位置)。有些文件可能非常大,所以我需要确保使用能够处理更大文件的方法。

我熟悉如何利用以下每种下载方法,我只想问哪种方法最好(最有效,最可靠,最普遍支持等):

Streaming fopen

Streaming cURL

的file_get_contents

卷曲

1 个答案:

答案 0 :(得分:5)

通常最好让网络服务器处理发送静态文件。

apachelighttpdnginx使用x-sendfile。您可以使用php进行身份验证,发送X-Sendfile标头,脚本将终止,Web服务器将处理文件的发送。最终用户永远不会知道文件在服务器上的位置。