使用Rails,Nginx(使用x-accel-redirect)和Apache(x-sendfile)下载大文件时出现问题

时间:2010-01-19 10:51:53

标签: ruby-on-rails apache nginx x-sendfile

当尺寸超过1gb时,我们遇到了问题。

我们在Amazon EC2 2gb上使用Rails 2.3.5,乘客2.2.9,使用2gb Ram和Fedora 10。

文件存储在/ mnt / files中,项目位于/ mnt / www / project

我们尝试使用Nginx和x-accel-redirect以及使用x-sendfile的Apache发送文件。

我们只能下载并且总是 1.09gb 而不是1.54gb !!

我们可以在没有问题的情况下下载文件,其中大小小于 1gb

如果我们在rails public目录中链接相同的文件(没有损坏),我们可以毫无问题地下载。

X-Accel-Redirect或X-SendFile配置正确,测试和检查了很多时间。

所以:

  1. 带有x-accel-redirect [失败]
  2. 的Nginx
  3. Apache与x-send-file [失败]
  4. 在nginx或apache上发送没有x-accel-redirect或x-sendfile的文件[失败]
  5. 公开链接文件并直接下载[工作]
  6. 有什么建议吗?

    感谢!!!

1 个答案:

答案 0 :(得分:0)

如果您想限制对这些下载的访问权限,您是否尝试过Access Key module