在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 =
设置为TRUE
并运行rake 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'...已经下降,一切正常。那是我生命中的几个小时,我永远不会回来。
答案 0 :(得分: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目录中。