1

刚开始将 heroku 与 rails 应用程序一起使用,但我无法启动 rails 应用程序。

Heroku 上的 Ruby 版本...

$ heroku 运行“ruby -v”

Running `ruby -v` attached to terminal... up, run.1
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]

$ heroku ps

=== web: `bundle exec thin start -R config.ru -e $RAILS_ENV -p $PORT`
web.1: crashed for 6m

$ heroku 日志

2012-08-17T10:06:49+00:00 heroku[web.1]: State changed from crashed to starting
2012-08-17T10:06:52+00:00 heroku[web.1]: Starting process with command `bundle exec thin start -R config.ru -e production -p 31657`
2012-08-17T10:06:54+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)
2012-08-17T10:06:54+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)
2012-08-17T10:06:56+00:00 app[web.1]: Connecting to database specified by DATABASE_URL
2012-08-17T10:06:57+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:317:in `rescue in depend_on': No such file to load -- URI (LoadError)
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:312:in `depend_on'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:225:in `require_dependency'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/engine.rb:439:in `block (2 levels) in eager_load!'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/engine.rb:438:in `block in eager_load!'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/engine.rb:438:in `each'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/engine.rb:436:in `each'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/engine.rb:436:in `eager_load!'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/application/finisher.rb:53:in `block in <module:Finisher>'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/initializable.rb:30:in `instance_exec'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/initializable.rb:30:in `run'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/initializable.rb:55:in `block in run_initializers'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/initializable.rb:54:in `each'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/railtie/configurable.rb:30:in `method_missing'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/config/environment.rb:5:in `<top (required)>'
2012-08-17T10:06:57+00:00 app[web.1]:   from config.ru:3:in `require'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/initializable.rb:54:in `run_initializers'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/application.rb:136:in `initialize!'
2012-08-17T10:06:57+00:00 app[web.1]:   from config.ru:3:in `block in <main>'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/builder.rb:51:in `instance_eval'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/builder.rb:51:in `initialize'
2012-08-17T10:06:57+00:00 app[web.1]:   from config.ru:1:in `new'
2012-08-17T10:06:57+00:00 app[web.1]:   from config.ru:1:in `<main>'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/controllers/controller.rb:181:in `load_rackup_config'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/rack/adapter/loader.rb:33:in `eval'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/runner.rb:185:in `run_command'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/controllers/controller.rb:71:in `start'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/rack/adapter/loader.rb:33:in `load'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/runner.rb:151:in `run!'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/bin/thin:6:in `<top (required)>'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/bin/thin:23:in `load'
2012-08-17T10:06:57+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/bin/thin:23:in `<main>'
2012-08-17T10:06:58+00:00 heroku[web.1]: Process exited with status 1
2012-08-17T10:06:58+00:00 heroku[web.1]: State changed from starting to crashed
2012-08-17T10:07:00+00:00 heroku[router]: Error H10 (App crashed) -> GET boiling-bayou-5291.herokuapp.com/ dyno= queue= wait= service= status=503 bytes=
2012-08-17T10:07:00+00:00 heroku[router]: Error H10 (App crashed) -> GET boiling-bayou-5291.herokuapp.com/favicon.ico dyno= queue= wait= service= status=503 bytes=

罪魁祸首似乎如下:

2012-08-17T10:06:57+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:317:in `rescue in depend_on': No such file to load -- URI (LoadError)

显然,加载“URI”模块存在问题。

问题是缺少什么?而且heroku报告的ruby版本是1.9.3,那为什么在上面的日志中我看到“1.9.1”。这是问题的一部分吗?

非常感谢!

4

2 回答 2

3

作为记录,Mac OS X 文件系统默认不区分大小写,而 Linux 文件系统则区分大小写。因此URIuri在 Mac 上是相同的,而require 'URI'在 Linux 上会失败,因为您要查找的文件称为uri.

于 2013-11-07T11:18:25.640 回答
0

发现问题...

我在我的代码中使用了 require 'URI' ...如果我将其更改为 require 'uri' 它适用于heroku。

需要明确的是,require 'URI' 正在我的本地开发环境中工作。

于 2012-08-17T18:11:10.990 回答