【问题标题】:Heroku Rails 4 static assets not showingHeroku Rails 4 静态资产未显示
【发布时间】:2013-08-03 01:35:00
【问题描述】:

我将我的应用程序更新到 Rails 4,但在运行资产预编译时无法部署到 Heroku。正如其他问题所涉及的那样,我认为这是由于试图找到我的 redis-to-go 不存在的ENV 变量而失败的。所以我添加了this post 中提到的 Heroku 实验室功能。我也在this post 中遵循了 Heroku 的建议。

这修复了预编译期间的错误,但我的资产没有显示。我做过的事情:

  • 添加了rails_12factor gem
  • 尝试在本地运行RAILS_ENV=production bundle exec rake assets:compile(在注释掉redis ENV["redistogo_url"]位之后
  • 已将config.serve_static_assets = true 添加到我的production.rb 文件中

然而,这些似乎都不起作用。可能是我没有按正确的顺序执行此操作。我从其他问题中知道其他人已经取得了成功,所以我想知道我还能尝试什么。

【问题讨论】:

  • 嗨,特拉维斯!你搞定了吗?
  • 你好@AndyAtkinson!不幸的是,我没有。我要回去很快再试一次。我有另一个使用资产运行 Rails 4 的应用程序,但它有点参差不齐。我一定是在做一些疯狂的事情。
  • 好的,经过大量更改(包括升级到 Rails 4.1.5)我终于认为这可行。我可以通过rake assets:precompile 获得,但资产没有显示。似乎在更新过程中我从未将config.action_dispatch.x_sendfile_header设置为nil而不是"X-Sendfile"

标签: heroku asset-pipeline ruby-on-rails-4


【解决方案1】:

过了一会儿,我又回到了这个问题上,并且开始工作了。自上次尝试以来的一些事情:

  • 我不需要在本地预编译资产
  • 我必须在production.rb 中将config.action_dispatch.x_sendfile_header 设置为nil
  • 在本地捆绑并运行 sprockets_better_errors gem,并在 application.css.scss 中添加了它的建议(尽管我认为我真的不需要?)

仅此而已。

【讨论】:

    猜你喜欢
    • 2013-09-12
    • 2016-05-21
    • 2011-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-07
    相关资源
    最近更新 更多