【问题标题】:PHP(32-bit) 2GB Range DownloadPHP(32-bit) 2GB 范围下载
【发布时间】:2020-09-28 07:11:22
【问题描述】:

我有以下问题:我有一个 php 网页:

  • 在树莓派(32 位)上运行
  • 应提供大于 2 GB 的文件以供下载
  • 文件受访问保护,这意味着您只能根据 php 代码中的条件下载文件
  • 必须支持 HTTP 范围请求

我有一个从 php 传递具有范围请求的文件的解决方案,但在这个解决方案中我使用的是 fseek,它不适用于大于 2GB 的文件,我不知道如何解决这个问题。

如果这与您相关,我正在使用 nginx 和 php7-fpm。

【问题讨论】:

标签: php nginx 32bit-64bit


【解决方案1】:

我找到了一个为我解决问题的解决方案。我没有尝试从 php 脚本发送文件,而是使用了 nginx 的一个功能。

Nginx 提供了将请求重定向到现有文件的可能性,但只能通过“X-Accel-Redirect”标头进行内部重定向。

文档:https://www.nginx.com/resources/wiki/start/topics/examples/xsendfile/

其他服务器似乎也可以,但它肯定适用于 nginx。

【讨论】:

  • 无论如何这是最好的解决方案。减轻应用程序服务器的负担,让 Web 服务器做它最擅长的事情。
猜你喜欢
  • 1970-01-01
  • 2012-02-10
  • 1970-01-01
  • 2011-08-04
  • 1970-01-01
  • 2017-03-25
  • 2016-05-04
  • 2013-05-03
  • 2012-03-17
相关资源
最近更新 更多