Apache Passenger找不到gem

我正在运行Ubuntu 10.04,并且已经转移了一些在Sinatra中build立的站点。 我已经设置了Phusion乘客,但是当我访问这些站点时,我得到一个Passenger LoadError,声称乘客没有这样的文件加载 – sinatra然而当我运行gem list或sudo gem list的时候,我清楚地看到sinatra上市。 为什么不能find这个gem?

我的sudo gem env输出看起来像这样

RubyGems环境:
– RUBYGEMS版本:1.3.5
– RUBY VERSION:1.8.7(2009-12-24 patchlevel 248)[x86_64-linux]
– 安装目录:/usr/local/lib/ruby/gems/1.8
– RUBY EXECUTABLE:/ usr / local / bin / ruby
– 可执行目录:/ usr / local / bin
RUBYGEMS平台:
– ruby
– x86_64-linux
创业板path:
– /usr/local/lib/ruby/gems/1.8
– /root/.gem/ruby/1.8
创业板configuration:
– :update_sources => true
– :verbose => true
– :benchmark => false
– :backtrace => false
– :bulk_threshold => 1000
远程来源:
– http://gems.rubyforge.org/

运行'sudo ruby​​ -v'我看到以下内容:
ruby 1.8.7 (2009-12-24 patchlevel 248) [x86_64-linux], MBARI 0x6770, Ruby Enterprise Edition 2010.01

这是正确的,还是应该两个ruby版本正确匹配,在两个显示REE?

提前致谢!

检查您的Passenger模块configuration文件。 在我的情况

/etc/apache2/mods-enabled/passenger.load内容:

 LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger2.2.5/ext/apache2/mod_passenger.so 

/etc/apache2/mods-enabled/passenger.conf内容:

 <IfModule mod_passenger.c> PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5 PassengerRuby /usr/local/bin/ruby </IfModule> 

PassengerRuby告诉模块是什么ruby翻译器使用。