OSX w / rbenv和Passenger:为什么加载错误的系统Ruby?

时间:2013-11-06 00:41:02

标签: ruby passenger phusion

我正在使用rbenv来管理我的Ruby版本,但似乎无法使用Phusion Passenger。

即使我已经将我的rbenv Ruby版本的行添加到我的/etc/apache2/httpd.conf文件中,我仍然收到此消息:

Web application could not be started
no such file to load -- rack (LoadError)

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require'
/usr/local/opt/passenger/libexec/helper-scripts/rack-preloader.rb:100:in `preload_app'
/usr/local/opt/passenger/libexec/helper-scripts/rack-preloader.rb:150
Application root
/Users/julian/Projects/assign
Environment (value of RAILS_ENV, RACK_ENV, WSGI_ENV and PASSENGER_ENV)
production
Ruby interpreter command
/usr/bin/ruby

然而,如果你看得更远,我认为我的道路是正确的:

PATH = /usr/local/heroku/bin:/Users/julian/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

我不确定我需要改变什么才能使这项工作。

1 个答案:

答案 0 :(得分:1)

  

我已经将我的rbenv Ruby版本的行添加到我的/etc/apache2/httpd.conf文件中

嗯,这没有告诉我们什么,因为我们无法判断你输入的内容是否正确。

Passenger的配置选项包括指定使用哪个Ruby的功能。使用Apache:

PassengerRuby /usr/local/bin/ruby;

对于Nginx使用:

passenger_ruby /usr/local/bin/ruby;

在nginx.conf或包含的.conf文件中,它会进入http { ... }块。我不确定Apache的用途是什么,因为我没有使用Apache。