1

在 Heroku 上,我收到一个at=error code=H10 desc="App crashed" method=GET path=/favicon.ico路由错误。

本地,我收到了ActionController::RoutingError (No route matches [GET] "/favicon.ico"):路由错误。

我通过设置并运行config.serve_static_assets =来解决本地问题。TRUErake assets:precompile

我一直无法解决 Heroku 上的问题。我推送了更新版本并运行heroku run rake assets:precompile无济于事。

这让我发疯了......一个缩略图图标站在我和成功部署之间。任何建议将不胜感激!

完整的heroku日志转储:

2013-05-11T17:08:14.869656+00:00 heroku[web.1]: State changed from crashed to starting
2013-05-11T17:08:16.053848+00:00 heroku[web.1]: Starting process with command `bundle exec rails server -p 44239`
2013-05-11T17:08:18.803969+00:00 app[web.1]: DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released. (called from <top (required)> at /app/config/environment.rb:5)
2013-05-11T17:08:18.804053+00:00 app[web.1]: DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released. (called from <top (required)> at /app/config/environment.rb:5)
2013-05-11T17:08:20.523845+00:00 app[web.1]: => Booting WEBrick
2013-05-11T17:08:20.524082+00:00 app[web.1]:    from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:55:in `block in run_initializers'
2013-05-11T17:08:20.524082+00:00 app[web.1]:    from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.13/lib/rails/application.rb:136:in `initialize!'
2013-05-11T17:08:20.523845+00:00 app[web.1]: => Call with -d to detach
2013-05-11T17:08:20.523845+00:00 app[web.1]:    from /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:312:in `depend_on'
2013-05-11T17:08:20.524353+00:00 app[web.1]:    from /app/config/environment.rb:5:in `<top (required)>'
2013-05-11T17:08:20.523845+00:00 app[web.1]: => Rails 3.2.13 application starting in production on http://0.0.0.0:44239
2013-05-11T17:08:20.524082+00:00 app[web.1]:    from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.13/lib/rails/engine.rb:438:in `block in eager_load!'
2013-05-11T17:08:20.524353+00:00 app[web.1]:    from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.13/lib/rails/railtie/configurable.rb:30:in `method_missing'
2013-05-11T17:08:20.523845+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:317:in `rescue in depend_on': No such file to load -- Digest (LoadError)
2013-05-11T17:08:20.524082+00:00 app[web.1]:    from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `run_initializers'
....
2013-05-11T17:08:21.668731+00:00 heroku[web.1]: State changed from starting to crashed

更新上帝啊,这一切都是由于需要“摘要”的大写字母“D”......小写并且一切正常。那是我生命中的几个小时,我永远不会回来。

4

1 回答 1

1

当你设置 -config.serve_static_assets = false并尝试做什么时会发生什么bundle exec rake assets:precompile RAILS_ENV=production?更进一步的是以下config.assets.compile设置true

另一个注意事项我注意到你把你的放在favicon你的公共目录中。我可以通过在我的layouts/application.html.erb

<!DOCTYPE html>
<html>
    <head>
        <title><%= home_title %></title>
        <%= stylesheet_link_tag "application" %>
        <%= javascript_include_tag "application" %>
        <%= csrf_meta_tag %>
        <link rel="icon" href="<%= image_path 'icon.ico' %>" type="image/ico" />
        <link rel="shortcut icon" href="<%= image_path 'icon.ico' %>" type="image/ico" />
    </head>

你会注意到我的icon.ico. 我icon.ico在我的 app/assets/images 目录中。

于 2013-05-11T16:06:31.973 回答