Ruby on rails Heroku Rails 4资产:预编译编译所有(也未更改)资产

Ruby on rails Heroku Rails 4资产:预编译编译所有(也未更改)资产,ruby-on-rails,heroku,asset-pipeline,assets,precompile,Ruby On Rails,Heroku,Asset Pipeline,Assets,Precompile,在每次推送到Heroku时,所有的资产都是预编译的,所以不仅仅是已经更改的资产。因此,资产预编译需要250秒以上的时间。我尝试了在网上找到的所有建议,但似乎无法解决 我已经按照Heroku的建议安装了rails\u 12factorgem。静态资产托管在Cloudfront上。我们使用Bower Rails作为前端依赖项。Unicorn是Heroku上的服务器 以下是production.rb环境中的一些设置: config.serve_static_assets = true config.a

在每次推送到Heroku时,所有的资产都是预编译的,所以不仅仅是已经更改的资产。因此,资产预编译需要250秒以上的时间。我尝试了在网上找到的所有建议,但似乎无法解决

我已经按照Heroku的建议安装了
rails\u 12factor
gem。静态资产托管在Cloudfront上。我们使用Bower Rails作为前端依赖项。Unicorn是Heroku上的服务器

以下是production.rb环境中的一些设置:

config.serve_static_assets = true
config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect'
config.assets.compile = true
config.static_cache_control = 'public, max-age=31536000'
config.assets.compress = true
config.assets.digest = true

有人也经历过这种情况吗?或者有人能帮我吗?

在推到heroku之前,你试过运行这个吗

bundle exec rake assets:precompile RAILS_ENV=production
然后执行git提交并
git推送heroku主机

我想将此作为一条评论发布,但没有代表>在推给heroku之前,您是否尝试过运行此功能

bundle exec rake assets:precompile RAILS_ENV=production
然后执行git提交并
git推送heroku主机

我想将此作为评论发布,但没有将我的资产编译到
/public/assets
文件夹中的rep>,但我在.gitignore中有它,因为否则Heroku将无法编译,Cloudfront上的资产已过时。Heroku编译到
/tmp/build\u 782828…
,它将我的资产编译到
/public/assets
文件夹中,但我的.gitignore中有它,因为否则Heroku不会编译,Cloudfront上的资产已经过时。Heroku编译成
/tmp/build\u 782828…
相同。你找到解决办法了吗?我们还没有找到解决办法。对我们来说,这不再是一个问题,因为我们只使用Rails作为API,所以我们不再使用Rails管道。你找到解决办法了吗?我们还没有找到解决办法。对我们来说,这不再是一个问题,因为我们只使用Rails作为API,所以我们不再使用Rails管道。