0

我的应用程序在本地运行良好,当我输入 git push heroku master 时我没有看到任何错误。但是,当我输入 heroku open 并访问我看到的网址时:

应用程序错误

应用程序发生错误,无法提供您的页面。请稍后重试。如果您是应用程序所有者,请查看您的日志以获取详细信息。

在heroku日志中,我得到以下信息:

2013-02-24T08:57:38+00:00 heroku[web.1]: Process exited with status 1
2013-02-24T08:57:38+00:00 heroku[web.1]: State changed from starting to crashed
2013-02-24T08:59:21+00:00 heroku[web.1]: State changed from crashed to starting
2013-02-24T08:59:23+00:00 heroku[web.1]: Starting process with command `bundle exec rails server -p 15485`
2013-02-24T08:59:30+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-02-24T08:59:30+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-02-24T08:59:33+00:00 app[web.1]: => Booting WEBrick
2013-02-24T08:59:33+00:00 app[web.1]: => Rails 3.2.11 application starting in production on http://0.0.0.0:15485
2013-02-24T08:59:33+00:00 app[web.1]: => Ctrl-C to shutdown server
2013-02-24T08:59:33+00:00 app[web.1]: Exiting
2013-02-24T08:59:33+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.11/lib/active_support/dependencies.rb:317:in `rescue in depend_on': No such file to load -- spec_helper (LoadError)
2013-02-24T09:04:16+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=whispering-journey-9991.herokuapp.com fwd="108.46.218.98" dyno= queue= wait= connect= service= status=503 bytes=

有一个加载错误和一些我没有设法修复的弃用警告。我刚刚更新到 rails 3.2.11 不确定它是否相关。

宝石文件:

source 'https://rubygems.org'

gem 'rails', '3.2.11'
gem 'bootstrap-sass', '2.0.4'
gem 'bcrypt-ruby', '3.0.1'
gem 'faker', '1.0.1'
gem 'will_paginate', '3.0.3'
gem 'bootstrap-will_paginate', '0.0.6'
gem 'jquery-rails', '2.0.2'
gem 'pg', '0.12.2'
gem 'rails_autolink', '~> 1.0.9'
gem 'rinku', '~> 1.5.0', :require => 'rails_rinku'
gem 'auto_html', '1.6.0'
gem 'acts_as_votable', '~> 0.4.0'
gem 'thumbs_up', '~> 0.6.2'


group :development, :test do
  gem 'rspec-rails', '2.11.0'
end

group :development do
  gem 'annotate', '2.5.0'
end

group :assets do
  gem 'sass-rails',   '3.2.5'
  gem 'coffee-rails', '3.2.2'
  gem 'uglifier', '1.2.3'
end

group :test do
  gem 'factory_girl_rails', '4.1.0'
  gem 'capybara', '1.1.2'
  gem 'cucumber-rails', '1.2.1', :require => false
  gem 'database_cleaner', '0.7.0'
end

这是我第一次在这台(新)计算机上推送 heroku,不确定这是否会导致问题。

输入 git push heroku 时,我也收到此错误:

   Running: rake assets:precompile
   rake aborted!
   could not connect to server: Connection refused
   Is the server running on host "127.0.0.1" and accepting
   TCP/IP connections on port 5432?

现在调查:https ://devcenter.heroku.com/articles/rails3x-asset-pipeline-cedar

4

1 回答 1

1

看起来您正在使用默认的 WEBrick 服务器。Heroku 建议使用“瘦”服务器。尝试在 Gemfile 中添加类似的内容:

gem 'thin', :group => :production

然后运行 ​​bundle install,使用 Git 提交文件并再次推送到您的 heroku 应用程序。如果您还没有这样做,则需要通过在命令行中尝试以下命令来预编译资产:

RAILS_ENV=production bundle exec rake assets:precompile

然后,不要忘记运行你的 git 命令:

git add .
git commit -m "added precompiled assets"
git push heroku master
于 2013-02-24T16:06:17.920 回答