【发布时间】:2015-07-22 07:38:21
【问题描述】:
我正在使用 rails 4.1.8
在 production.rb 文件中我有以下内容:
config.eager_load = false
config.cache_classes = false
config.consider_all_requests_local = true
config.action_controller.perform_caching = true
config.serve_static_assets = true
config.assets.js_compressor = :uglifier
config.assets.compile = false
config.assets.digest = false
config.assets.debug = true
现在在运行 RAILS_ENV=production rake assets:precompile 后,它会预编译所有资产并将它们存储在 public/assets 文件夹中,文件名为 application-ca4ad5e0582927b0a78c2b6feef3309b.js
在本地的生产环境中运行应用程序后,它会抛出错误
ActionController::RoutingError (No route matches [GET] "/assets/application.js"):
我尝试更改 config.serve_static_assets 和其他的值。但仍然面临同样的问题。
预编译文件在其名称中使用摘要值保存,例如:application-ca4ad5e0582927b0a78c2b6feef3309b.js 但以application.js 访问,这是导致主要问题的原因。
这里有什么建议吗?谢谢..
【问题讨论】:
标签: ruby-on-rails-4 asset-pipeline production-environment ruby-on-rails-4.1