我在我的服务器上部署我的rails应用程序时遇到问题。我使用Passenger来部署页面。启动服务器时,我的页面上列出了以下错误。这似乎是我已经安装的乘客版本引用红宝石1.8.7,但我的应用程序已建成在2.0.0。我已经尝试删除红宝石1.8.7并重新安装乘客,但目前为止没有运气。如果我从我的目录运行ruby -v,它会将版本列为2.0.0。Passenger('Bundler:RubyVersionMismatch')
Your Ruby version is 1.8.7, but your Gemfile specified 2.0.0 (Bundler::RubyVersionMismatch)
/home/ubuntu/.rvm/gems/[email protected]/gems/bundler-1.3.4/lib/bundler/definition.rb:361:in ` validate_ruby!'
/home/ubuntu/.rvm/gems/[email protected]/gems/bundler-1.3.4/lib/bundler.rb:116:in `setup'
/home/ubuntu/.rvm/gems/[email protected]/gems/bundler-1.3.4/lib/bundler/setup.rb:17
/usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:59:in `gem_original_require'
/usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:59:in `require'
/var/lib/gems/1.8/gems/passenger- 4.0.0.rc4/lib/phusion_passenger/loader_shared_helpers.rb:212:in `run_load_path_setup_code'
/var/lib/gems/1.8/gems/passenger-4.0.0.rc4/helper-scripts/rack-preloader.rb:73:in `preload_app'
/var/lib/gems/1.8/gems/passenger-4.0.0.rc4/helper-scripts/rack-preloader.rb:127
我的apache2.conf文件有以下补充:
Include sites-enabled/
<ifmodule mod_ssl.c>
NameVirtualHost *:443
</ifmodule>
LoadModule passenger_module /var/lib/gems/1.8/gems/passenger 4.0.0.rc4/libout/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/1.8/gems/passenger-4.0.0.rc4
PassengerRuby /usr/bin/ruby1.8
编辑:ANSWER
我用sudo来安装乘客和Apache2的模块。应该只是键入:
gem install passenger -pre
passenger-install-apache2-module
没有sudo。
尝试在你的Gemfile所在的同一目录下执行'bundle update'。 – fmendez 2013-03-19 02:28:58
谢谢fmendez,我已经尝试过,但仍然没有运气。 – user1835358 2013-03-19 02:52:58