【问题标题】:mod_xsendfile alternatives for a shared hosting service without it没有它的共享托管服务的 mod_xsendfile 替代品
【发布时间】:2009-12-27 11:37:54
【问题描述】:
我正在尝试在我正在开发的 Rails 应用程序中记录 .pdfs 和 .zips (5-25MB) 的下载统计信息,但我只是碰壁了;我发现我们的共享主机提供商不支持mod_xsendfile。我读过的sources 声明如果没有这个,多次下载可能会导致 DoS 问题——这是我绝对要避免的。我想知道这种通过 Rails 提供文件的方法是否有任何替代方法?
【问题讨论】:
标签:
ruby-on-rails
apache
download
denial-of-service
【解决方案1】:
那么,您存储的文件有多敏感?
如果您将这些文件托管在应用程序的 /public 目录下的某个位置,您可以在用户点击某种控制器操作来更新您的下载统计信息后执行元标记或 javascript 重定向到这些文件的面向公众的 URL .
在这种情况下,您的用户可能需要在浏览器开始文件下载之前获得“您的下载应在稍后开始”页面之一。
在这种情况下,您的 Rails 应用程序不会将文件流式传输,而您的 Web 服务器会,这将为您提供与 xsendfile 相同的效果。另一方面,如果您需要控制对那些可下载文件的访问,这将不会很好。