首页 文章

乘客使用Ruby系统版本而不是RVM中的Ruby

提问于
浏览
0

我在Debian环境中使用RVM(1.19),Passenger(3.0.19),Apache .

我尝试使用RVM将ruby版本从1.8.7更新到1.9.3 . 执行了以下步骤:

  • rvm install 1.9.3

  • rvm rvmrc到.ruby-version(在我的Rails app文件夹中)

  • rvm使用1.9.3&gem install passenger&rvm passenger-install-apache2-module(在我的1.9.3环境中安装passenger和apache2-module)

  • 更新了'/etc/apache2/mods-available/'中的'mod_rails.load'文件:

LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p392/gems/passenger-3.0.19/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p392/gems/passenger-3.0.19
PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p392/ruby
  • 最后,我重新启动了apache服务器 .

毕竟,我的应用程序仍在使用Ruby 1.8.7,而Passenger正在从'/var/lib/gems/1.8/gems/'获取宝石 . 所以我猜Passenger忽略了mod_rails.load中的配置 .

有谁知道如何解决这个问题?

1 回答

  • 0

    ruby -v 输出什么?

    如果是 1.8.7 ,请尝试 rvm use 1.9.3 并确保将1.9.3设置为默认值 .

    rvm default 1.9.3

    并且你的 .rvmrc 来自你的 .bash_profile 之类的东西:

    `[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"`
    

    还有 which rvm 返回什么?这应该是您用来加载gems的文件路径的开头 . 它通常像 /Users/local/.rvm

相关问题