rails 4资产不在生产中

时间:2013-12-17 19:28:51

标签: ruby-on-rails twitter-bootstrap ruby-on-rails-4

几个月来,我一直在使用bootstrap-sass工作,直到我进行了捆绑更新。首先,资产不会预编译,因为gem已更新到版本3.我将gem更改为bootstrap-sass,'2.3.2.0'以强制它使用版本2.3,因为简单形式不支持bootstrap 3。

现在bootstrap在开发中工作,但不在生产中。虽然capistrano部署会进行预编译,但似乎没有找到资产。

gem 'sass-rails', '>= 3.2'

gem 'bootstrap-sass', '2.3.2.2'

gem 'bootswatch-rails'

在我的js控制台中,我看到这是一个正确的指纹,但有几个带有不同指纹的application.css文件: -

GET http://app.sportdata.com.au/assets/application-b0204eeff0e69f0476f26848303a9b7d.css 404 (Not Found) sports:18
GET http://app.sportdata.com.au/assets/application-a130dbe196c4f76b2ce46bc61cd2e18d.js 404 (Not Found) sports:20

3 个答案:

答案 0 :(得分:3)

打开config / environments / production.rb并确保将以下选项设置为true:

# Don't fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = true

然后运行:

rake assets:precompile --trace RAILS_ENV=production

答案 1 :(得分:0)

我在nginx.conf中以某种方式丢失了服务器下的root。

答案 2 :(得分:0)

确保在config / environments / production.rb中,您有...

config.serve_static_assets = true