【问题标题】:Serving files through controllers with partial download support通过具有部分下载支持的控制器提供文件
【发布时间】:2011-05-09 13:35:15
【问题描述】:

我需要通过 grails 提供文件,只有具有权限的用户才能访问,所以我不能通过指向容器的静态链接来提供文件。系统能够毫无问题地将二进制文件流式传输到客户端,但现在(对于客户端的带宽性能问题)我需要在控制器中实现分段或部分下载。

这个问题有插件或经过验证的解决方案吗? 可能是某种 tomcat/apache 插件,用于限制对具有某些规则或临时票证的文件的访问,因此我可以将“恢复下载”或“分段下载”问题委托给容器。

我还需要记录并保存用户下载的统计信息。 我需要良好的性能,所以我认为在控制器中这样做不是个好主意。

抱歉英语不好。

【问题讨论】:

    标签: grails download controller partial


    【解决方案1】:

    有一个 用于 apache 的插件 - https://tn123.org/mod_xsendfile/ 在这种情况下,你在 apache 后面使用什么并不重要。通过使用此插件,您将使用特殊标头 X-SENDFILE 进行响应,并提供要服务的文件路径,Apache 将负责当前请求的实际文件下载。

    如果您使用 Nginx,则必须使用 X-Accel-Redirect 标头,请参阅 http://wiki.nginx.org/XSendfile

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-03
      • 1970-01-01
      • 1970-01-01
      • 2012-09-19
      • 2020-03-14
      相关资源
      最近更新 更多