如何在Rails中设置“连接:关闭”标头
问题描述:
要解决上传文件时经常挂起的Safari问题,我需要向我的Rails服务器发出请求,并让它返回一个带有“Connection:close”标头的空主体。有关此修复程序的更多详细信息,请参阅here。如何在Rails中设置“连接:关闭”标头
到目前为止,我曾尝试:
def close
return head :ok, {'Connection' => 'close'}
end
def close
response.headers['Connection'] = 'close'
render :nothing => true
end
def close
response.headers['Connection'] = 'close'
return head :ok
end
这些方法似乎都不工作。检查Firebug和Safari的开发者控制台中的请求,发现响应标题Connection始终设置为“保持活动”
我使用Mongrel和Nginx运行Rails 2.3.5。顺便说一句,设置Content-Type等标题确实有效。
有关如何解决此问题的任何想法?
答
所以我从来没有想过如何在Rails中做到这一点,但我确实发现nginx 0.7.66+版本会禁用Safari的Keepalive连接。请参阅nginx changelog。
所以我升级了我的nginx,现在Safari全部都很好。