我正在运行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翻译器使用。