2014-08-28 28 views
1

我按照本教程介绍了如何在Heroku中压缩资源。在Heroku中使用Rack-Zippy服务压缩资产

http://www.cheynewallace.com/serving-compressed-assets-with-heroku-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 'yui-compressor', '~> 0.12.0' 
gem 'rack-zippy' 

我跑的Heroku运行rake中间件,并得到诶以下输出

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

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

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

rack-zippy and option -d in production env doesn't serve static assets

而答案没有工作。

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

回答

2

我有一个类似的问题。当我在config/environments/production.rb上设置config.assets.compile为false时,情况开始发挥作用。

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