【发布时间】:2014-01-06 21:23:57
【问题描述】:
服务器版本:Apache/2.2.22 (Debian) 服务器搭建:2013年3月4日22:05:29
Phusion 乘客版本 4.0.21
Alias /tester /var/www/tester/public
<Location /tester>
PassengerBaseURI /tester
PassengerAppRoot /var/www/tester
</Location>
<Directory /var/www/tester>
Allow from all
Options -MultiViews
#Enable response streaming
PassengerBufferResponse off
</Directory>
你好, 我在使用 Apache 时遇到了“流式传输”的问题。如果我尝试运行以下代码,它会在发送到客户端之前完成处理;
#app.rb
require 'sinatra'
get '/' do
stream do |out|
out << "foo\n"
sleep 10
out << "bar\n"
end
end
如果我从 CLI 运行启动瘦、sinatra 或乘客的应用程序,它将流式传输“foo”,然后稍后将流式传输“bar”。
知道为什么 Apache 会缓冲输出吗?
【问题讨论】: