【问题标题】:Is it possible to change Passenger Ruby version without recompiling?是否可以在不重新编译的情况下更改Passenger Ruby 版本?
【发布时间】:2011-12-27 11:24:52
【问题描述】:

我尝试将默认的 ruby 命令更改为 1.9.2,但 Passenger 继续运行 1.8.7

Passenger 编译时是否嵌入了 Ruby?

【问题讨论】:

  • 我也有类似的问题。请详细说明您是如何解决问题的。

标签: ruby-on-rails ruby deployment passenger


【解决方案1】:

<Directory> 标签之前设置PassengerRuby。

例子:

PassengerRuby /home/ubuntu/.rvm/wrappers/ruby-2.3.1/ruby

它对我有用!

this post 中查找更多详细信息。

【讨论】:

    【解决方案2】:

    每当“捆绑更新”更新乘客 gem 的版本时,我都会这样做

    sudo su -
    passenger-install-apache2-module
    

    在该过程结束时,它会吐出您需要放在顶部或 Apache 配置中的全部内容。例如。类似:

    LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.2-p180@rails31/gems/passenger-3.0.9/ext/apache2/mod_passenger.so
    PassengerRoot /usr/local/rvm/gems/ruby-1.9.2-p180@rails31/gems/passenger-3.0.9
    PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.2-p180@rails31/ruby
    

    我更新了一些东西,重新启动 Apache,一切似乎都很好。

    我想在更新 Ruby 后同样的过程是必要的。

    【讨论】:

      【解决方案3】:

      要设置 Ruby 版本,请将此行添加到您的 vhost 文件中:

      PassengerRuby /path/to/the/ruby/version/you/want/to/use
      

      【讨论】:

      • @marimaf 这完全取决于您的主机设置。
      • 我刚刚运行了 $locate vhost 并没有得到任何名为 vhost 的文件。我得到的只是一些 apache http_vhost.h、mod_vhost_alias.so 和 httpd-vhosts.conf
      • 好吧,就像我说的,一切都取决于您的设置。 conf 就是你要找的。如果您想了解更多信息,您应该在 serverfault.com 上提出一个新问题
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-01
      • 2010-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-06
      相关资源
      最近更新 更多