这个答案适用于 rails 4
rails-4 不会缩小资产的原因之一是当 RAILS_ENV 未设置为生产时。
这通常发生在您预编译资产并使用 prod 模式运行 webrick 时:
rails s -e 'production'
但生成的 application.css 和 application.js 仍然连接但未缩小。
要解决此问题,请在预编译资产时使用以下命令指定环境:
$ RAILS_ENV=production bundle exec rake assets:precompile
此外,如果您从 rails 3 升级到 rails 4,请注意config.assets.compress = true
production.rb 中的指令对 rails 4 不再有效。您需要在config/environments/production.rb
文件中添加以下指令以缩小 js 和 css 文件:
# Compress JavaScripts and CSS.
config.assets.js_compressor = :uglifier # make sure the 'uglifier' gem is included before adding this line
config.assets.css_compressor = :sass # if you are using the sass-rails gem, this line is unnecessary