【问题标题】:PHP Force Download Remote File without Going Through Our ServerPHP 强制下载远程文件而不通过我们的服务器
【发布时间】:2012-07-09 16:28:07
【问题描述】:

我编写了一个 php 脚本,它从 YouTube 检索 flv URL 并使用 header 和 readfile() 函数强制下载它。它可以正常工作,但 flv 文件会通过我的托管服务器,然后再发送给消耗大量带宽并导致服务器停机的用户。

有没有人有更好的解决方案来解决这个问题?

【问题讨论】:

  • 您可能正在寻找的是所谓的重定向。但是,重定向后,您的用户浏览器会决定如何处理新 URL,例如例如在插件中打开它。

标签: php file download


【解决方案1】:

两种选择:

  1. 开发一个浏览器插件,强制下载和/或直接将文件保存到磁盘
  2. 告诉用户“右键单击并选择另存为...

你不能强迫另一个服务器做某事或一个客户端以任何特定的方式与服务器交互。

【讨论】:

    【解决方案2】:

    如果您通过 readfile 提供它,则它必须通过您的服务器。你唯一能做的就是直接重定向到flv。或者他们必须“另存为”才能获取文件。

    你可以做的事情来优化这个过程是在你的服务器上缓存文件。这也会占用您的带宽,但您不必一直从 youtube 获取文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-03
      • 1970-01-01
      • 1970-01-01
      • 2020-05-29
      • 1970-01-01
      • 2012-08-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多