PHP(32 位)2GB 范围下载
PHP(32-bit) 2GB Range Download
我有以下问题:我有一个 php 网页:
- 在 raspberry pi(32 位)
上是 运行
- 应该提供大于 2 GB 的文件供下载
- 文件受访问保护,这意味着您只能根据 php 代码
中的条件下载文件
- 必须支持 HTTP 范围请求
我有一个解决方案,用于传送具有来自 php 的范围请求的文件,但在这个解决方案中,我使用的是 fseek,它不适用于大于 2GB 的文件,我不知道如何解决那个问题。
我正在使用 nginx 和 php7-fpm 如果这与您相关。
我找到了解决问题的方法。我没有尝试从 php 脚本发送文件,而是使用了 nginx 的一个特性。
Nginx 提供了将请求重定向到现有文件的可能性,但只能通过 "X-Accel-Redirect" header.
从内部重定向
文档:https://www.nginx.com/resources/wiki/start/topics/examples/xsendfile/
其他服务器似乎也可以,但它确实适用于 nginx。
我有以下问题:我有一个 php 网页:
- 在 raspberry pi(32 位) 上是 运行
- 应该提供大于 2 GB 的文件供下载
- 文件受访问保护,这意味着您只能根据 php 代码 中的条件下载文件
- 必须支持 HTTP 范围请求
我有一个解决方案,用于传送具有来自 php 的范围请求的文件,但在这个解决方案中,我使用的是 fseek,它不适用于大于 2GB 的文件,我不知道如何解决那个问题。
我正在使用 nginx 和 php7-fpm 如果这与您相关。
我找到了解决问题的方法。我没有尝试从 php 脚本发送文件,而是使用了 nginx 的一个特性。
Nginx 提供了将请求重定向到现有文件的可能性,但只能通过 "X-Accel-Redirect" header.
从内部重定向文档:https://www.nginx.com/resources/wiki/start/topics/examples/xsendfile/
其他服务器似乎也可以,但它确实适用于 nginx。