ruby-on-rails – 通过Rails通过Nginx提供大文件2.3使用x-sendfile
假设我有一个Rgin 2.3.2应用程序,由nginx提供,由mongrel服务,我需要通过Rails服务一个大型静态文件(以控制对它的访问).我希望Rails应用程序将文件的转移委托给nginx,以避免阻止mongrel实例. 可用的信息似乎是矛盾和不完整的. This post显示了如何使用Apache,并提示它也可以使用ngninx – 但没有例子. This post和this post显示了如何使用一个显然是Rails 2.3的插件来做到这一点. This post建议,也许没有支持x-sendfile与nginx毕竟. 我宁愿不用Rails现在可以自己做的事情插入插件. 有没有人得到x-sendfile的行为工作使用没有插件和Rails 2.3 / nginx / mongrel?如果没有,最好的文档是使用一个插件(和/或monkeypatch)和Rails 2.3 / nginx / mongrel? 最佳答案 主要思想:所有的控制器都是设置nginx x-accel-redirect标题.一旦你的控制器方法返回(这将非常快),nginx将看看您的Rails应用程序设置的标题.如果设置了x-accel-redirect,那么nginx会提供静态文件.你的控制器看起来像:
这一点不会做的伎俩.您还需要告诉nginx有关位于$RAILS_ROOT / files的文件.将其添加到服务器块内的nginx配置结尾:
将静态文件放到$RAILS_ROOT / files中,它应该可以工作.不需要插件或monkeypatching测试与Rails 2.3.2和2.3.14. (编辑:鄂州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 正则表达式 – nginx匹配位置中的特定单词
- 通过https/SSL访问NGINX/PHP-FPM时速度极慢
- php-当客户端使用HTTP / 1.1时,为什么$_SERVER [“ SERVER_
- 网络应用程序 – 在同一服务器上运行Tornado和Nginx
- 使用PHP5-FPM的Nginx-提供空白屏幕的.php文件
- Nginx安装在Mac OS X Lion上.找不到PCRE
- Nginx access_log默认刷新时间
- ruby-on-rails – ubuntu 10.04中的“update-rc.d:/etc/in
- nginx – 如何让我的服务器上的一个黑客网站不会破坏其他网
- java – nginx:当使用nginx作为反向代理时,是否可以在访问