【发布时间】:2012-01-20 21:47:18
【问题描述】:
根据此处接受的答案中的 cmets Rails how to Gzip Javascript? (Heroku) 和官方 cedar 文档 (http://devcenter.heroku.com/articles/http-routing#the_herokuappcom_http_stack):
由于对 Cedar 应用程序的请求是直接向应用程序服务器发出的,而不是通过像 nginx 这样的 HTTP 服务器代理,因此任何响应压缩都必须在您的应用程序中完成。对于 Rack 应用程序,这可以通过 Rack::Deflater 中间件来完成。对于压缩后的静态资源,请确保在中间件堆栈中的 ActionDispatch::Static 之前加载 Rack::Deflater。
但是,据我所知,我的应用程序正在 herokuapp.com (cedar) 上运行,并且根据 heroku 日志,正在使用 nginx 来提供数据(这很棒)。我还通过 Content-Encoding HTTP 标头确认它正在将数据压缩到浏览器。根据文档,这不应该发生在雪松上。我在这里遗漏了什么吗?
【问题讨论】:
-
同样,我的印象是 Cedar 没有使用 Varnish 进行兑现,但在我的应用程序 (www.get3sixty.com) 上,有一个 Via: varnish 标题。我怀疑他们只是没有更新文档,但很高兴知道这一点!
-
奇怪!它似乎很受欢迎 - 我检查了我知道在 Cedar 上的 4 个应用程序,2 个报告清漆标题,其他 2 个没有。