【问题标题】:How to force download of an .mp4 file by PHP headers from external url?如何通过 PHP 标头从外部 url 强制下载 .mp4 文件?
【发布时间】:2016-01-28 14:54:48
【问题描述】:

我无法找到有关标题的答案。我在网站 A 上托管了一个 .MP4 文件,并希望使用网站 B 上的按钮强制下载。是否可以不将文件下载到网站 B 然后将其提供给用户?

我已经把所有必要的数据拉到网站B,但是为了下载一个文件,用户需要在按钮上右击保存。

【问题讨论】:

  • 在服务器 B 的页面上添加指向服务器 A 上文件的链接。如果需要,您可以使用 CSS 使其看起来像按钮。
  • 到目前为止,这个技巧只是在浏览器中播放视频而不是下载它:)

标签: php curl header web-scraping


【解决方案1】:

这是我使用的 (PHP),其中 $cf 包含所请求文件的路径。您可能希望在服务器 B 上存储一个下载脚本来实现这一点,只需链接到该脚本即可进行下载.. http://link.to.script/script.php?file=thefilename.mp4'>Download 我会'通常不会将文件名放在 URL 中,但这只是一个示例。

header('Content-Disposition: attachment; filename="' . basename($cf) . '"');
header("Content-Length: " . filesize($cf));
header("Content-Type: application/octet-stream");
readfile(realpath($cf));

【讨论】:

  • 网站 A 使用 javascript 生成 jwplayer 和 url。我已经获取了 url 和必要的数据,但不能强制它下载而不是在浏览器中播放。
猜你喜欢
  • 2015-07-07
  • 2019-12-03
  • 1970-01-01
  • 2020-06-03
  • 2012-12-31
  • 1970-01-01
  • 1970-01-01
  • 2012-11-07
  • 2023-04-01
相关资源
最近更新 更多