我正在为 NGINX 提供一个静态文件夹。
在那个文件夹中,我有一个 60GB 的特定文件,但它只能以小块读取,使用如下所示的 HTTP 请求:
所以如果用户试图下载整个文件,NGINX 应该拒绝它。
在某些方面,我认为可以这样做,例如:
检查HTTP请求头是否Range存在,字节范围是否小于X。
检查请求的响应负载是否小于例如 100MB。
但我不知道如何在 NGINX 中实现这些。
我认为,您可以配置 nginx 来检查特定位置(60gb 文件位置)是否存在特定(范围)标头。然后您可以阻止不包含 Range 标头的请求。
您可以检查这些链接:
编辑
在配置中编码复杂的条件似乎有点问题Nginx。也许您应该考虑使用一些服务器端脚本来提供大文件,即。PHP。有很多流脚本的示例。
https://gist.github.com/ranacseruet/9826293
将 Nginx 配置为使用此类脚本后,您需要向脚本添加逻辑(范围条件),并防止直接访问大文件。
| 归档时间: |
|
| 查看次数: |
401 次 |
| 最近记录: |