如何告诉rails使用非默认的ruby?

我需要服务器上两个不同版本的ruby。 打包的木偶包装的ruby工作,和一个编译ruby的轨道Web应用程序工作。 所以基本上我想要默认的ruby是从包的ruby,并导致使用编译的ruby(在/usr/local/bin//usr/local/lib/

我已经find了设置RUBYPATH和RUBYLIB环境variables的参考,但是我很困惑,在哪里设置它们。 在.bashrc.profile ,在apacheconfiguration的地方?

一个诀窍就是将PATH包含到你想要的那个。 这可能是一个黑客,但。

如果你正在使用Rails 2.x(我假设你是),你可以专门运行一些path,例如:

 /usr/local/bin/ruby script/server 

(例如对于开发模式)。

如果您使用的是Phusion Passenger,我个人build议,我认为它可以在全球范围内设置为Web服务器configuration。 我不确定您是否可以使用Passenger来执行每个虚拟主机,但是听起来并不像您需要的那样。

我知道这是一个古老的线程,但任何人都有这个问题只是安装RVM( http://rvm.beginrescueend.com/ )你可以从字面上切换系统使用这样的ruby版本(在命令行) :

 rvm 1.9.2 ruby -v (will display ruby 1.9.2) rvm 1.8.7 ruby -v (will display ruby 1.8.7) 

简单,没有问题!