Rails 3.1.1 使用 Apache 进行 HTTP 流式传输乘客
在关于 HTTP 流的 Railscasts 中,一些评论者已经确认可以使用 Apache + Passenger 进行 http 流,但奇怪的是我无法通过 Google 找到任何说明。
Rails 文档也没有提供任何说明。所有详细说明均参考 Unicorn。我一定不是唯一一个想通过 Apache 和 Passenger 进行 http 流处理的人。请帮忙。
In the Railscasts about HTTP streaming some commenters have confirmed that one can do http streaming with Apache + Passenger but strangely I can't find any instructions via Google.
Also the Rails doc did not provide any instructions. All detailed instructions everywhere refer to Unicorn. I must not be the only one wanted to do http streaming over Apache and Passenger. Help please.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
HTTP 流更正确的名称是分块传输编码。
这些是我所知道的事情(可能还有更多要求):
Ruby 1.9.x
Streaming 需要 Ruby 1.9 的线程功能
兼容的中间件
您拥有的任何中间件都不得修改HTTP 响应
Passenger
Passenger_buffer_response 选项必须关闭
客户端支持
客户端必须宣传其使用 HTTP 1.1 或发送 TE 请求标头。
我依稀记得在某处读到需要 nginx,但我在任何地方都找不到参考。
我希望这有帮助。
HTTP Streaming is more correctly known as Chunked Transfer Encoding.
These are the things I know about (there may be more requirements):
Ruby 1.9.x
Streaming requires the threading features of Ruby 1.9
Compatible middleware
Any middleware you have must not modify the HTTP response
Passenger
The passenger_buffer_response option must be turned off
Client Support
The client must advertise it uses HTTP 1.1 or send the TE request header.
I vaguely recall reading somewhere that nginx was needed, but I cannot find the reference anywhere.
I hope that helps.
我昨天刚刚在 Apache 下设置了带有响应流的 Passenger,没有遇到任何问题。这是我在 httpd.conf 中的虚拟主机配置:
I just set up Passenger under Apache with response streaming yesterday and had no trouble. Here is my virtual host config in httpd.conf: