繁体   English   中英

Rails:暂存环境中不可用的资产

[英]Rails: assets unavailable in staging environment

我正在尝试设置一个临时环境。

我复制了environment / production.rb来创建环境/staging.rb。

我在本地测试了暂存环境并运行了

RAILS_ENV=staging rake assets:clean assets:precompile
RAILS_ENV=staging rails s

资产是在公共/资产中正确生成的,当我加载页面时,资产的链接是正确的(例如:/assets/application-e014056a81279320a97c71ed25eb46ab.css)

但是浏览器无法加载它们,如果我尝试打开

http://localhost:3000/assets/application-e014056a81279320a97c71ed25eb46ab.css

我得到404。

现在,奇怪的是它可以在生产环境中使用:

RAILS_ENV=production rake assets:clean assets:precompile
RAILS_ENV=production rails s

对于环境/staging.rb和环境/production.rb,配置为

config.serve_static_assets = false

config.assets.compile = false

config.assets.digest = true

并在application.rb中

Bundler.require(*Rails.groups(assets: %w(development test)))

你有什么想法要看吗? 还有什么可以将登台环境与生产环境区分开?

因此,我忘记了“ rails_12factor” gem的角色。

我将我的Gemfile更新为

gem 'rails_12factor', group: [:staging, :production]

现在一切正常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM