2

Railsアプリをサーバーにデプロイする際に問題が発生しました。ページを提供するためにPassengerを使用してデプロイしています。サーバーを起動すると、次のエラーがページに表示されます。インストールした乗客のバージョンはruby1.8.7を参照しているようですが、私のアプリは2.0.0でビルドされています。ruby 1.8.7を削除してPassengerを再インストールしようとしましたが、今のところうまくいきません。ディレクトリからruby-vを実行すると、バージョンが2.0.0と表示されます。

Your Ruby version is 1.8.7, but your Gemfile specified 2.0.0 (Bundler::RubyVersionMismatch)
/home/ubuntu/.rvm/gems/ruby-2.0.0-p0@global/gems/bundler-1.3.4/lib/bundler/definition.rb:361:in `   validate_ruby!'
/home/ubuntu/.rvm/gems/ruby-2.0.0-p0@global/gems/bundler-1.3.4/lib/bundler.rb:116:in `setup'
/home/ubuntu/.rvm/gems/ruby-2.0.0-p0@global/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

編集:回答

sudoを使用してpassengerとapache2モジュールをインストールしていました。次のように入力する必要があります。

gem install passenger -pre
passenger-install-apache2-module

sudoなし。

4

3 に答える 3

2

あなたの乗客の設定はルビー1.8を指しています

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

おそらくこのように見えるはずです...

LoadModule passenger_module /var/lib/gems/2.0.0/gems/passenger 4.0.0.rc4/libout/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/2.0.0/gems/passenger-4.0.0.rc4
PassengerRuby /usr/bin/ruby2.0.0

乗客のインストールは非常に役立ち、インストールが成功すると、コンソールにこれらの行が印刷されます。これらの行をコピーして、apacheconfに貼り付けるだけです。

于 2013-03-19T05:16:46.950 に答える
0

パッセンジャーのインストールを再試行する必要があります。

于 2013-03-19T02:35:49.680 に答える