使用Rack-Zippy在Heroku中提供压缩资产

我按照本教程学习了如何压缩Heroku中的资产。

Serving Compressed Assets With Heroku and Rack-Zippy

这是我的Application.rb文件

require File.expand_path('../boot', __FILE__) require 'rails/all' Bundler.require(*Rails.groups) module Blog class Application < Rails::Application config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif) config.exceptions_app = self.routes config.cache_store = :memory_store Rails.application.config.middleware.swap(ActionDispatch::Static, Rack::Zippy::AssetServer, Rails.public_path) end end 

我的gem文件

 gem 'yui-compressor', '~> 0.12.0' gem 'rack-zippy' 

我运行了heroku运行rake中间件并得到了输出后的呃

 use Rack::Sendfile use Rack::Zippy:AssetServer 

现在,当我访问开发人员工具和网络选项卡时,我发现其大小几乎与每个资产的内容相同。 这意味着资产没有被压缩。

我能找到的唯一类似的问题就是这个问题

生产环境中的rack-zippy和选项-d不提供静态资产

答案没有用。

我应该使用另一台Compressor,因为它看起来像Rack Zippy不起作用。

我有类似的问题。 当我在config/environments/production.rb上将config.assets.compile设置为false时,事情就开始起作用了。

此外,必须在部署之前预编译资产。