6

在关于 HTTP 流的 Railscasts 中,一些评论者已经确认可以使用 Apache + Passenger 进行 HTTP 流,但奇怪的是我无法通过 Google 找到任何说明。

Rails 文档也没有提供任何说明。各处的所有详细说明均参考 Unicorn。我一定不是唯一一个想通过 Apache 和Passenger 进行http 流式传输的人。请帮忙。

4

2 回答 2

1

HTTP Streaming 更准确地称为Chunked Transfer Encoding

这些是我所知道的(可能有更多要求):

红宝石 1.9.x

流需要 Ruby 1.9 的线程特性

兼容的中间件

您拥有的任何中间件都不得修改 HTTP 响应

乘客

乘客缓冲区响应选项必须关闭

客户支持

客户端必须宣传它使用 HTTP 1.1 或发送 TE 请求标头。

我隐约记得在某处读到需要 nginx,但我在任何地方都找不到参考。

我希望这会有所帮助。

于 2011-12-08T07:46:19.020 回答
0

我昨天刚刚在 Apache 下设置了带有响应流的乘客,没有遇到任何问题。这是我在 httpd.conf 中的虚拟主机配置:

<VirtualHost *:80>
  ServerName www.my.site.com
  DocumentRoot /var/rails/myapp/public    
  <Directory /var/rails/myapp/public>
     # This relaxes Apache security settings.
     AllowOverride all
     # MultiViews must be turned off.
     Options -MultiViews
     # Enable response streaming
     PassengerBufferResponse off
  </Directory>
</VirtualHost>
于 2013-03-01T14:17:09.610 回答