2014-03-03 28 views
0

我將Passenger配置爲支持具有不同版本的Ruby的多個VirtualHost中的Rails應用程序。我想要一個輔助方法來檢測正在提供給每個應用程序的Ruby版本,以確保配置正確。如何檢測乘客下的Ruby版本

有沒有一種快速的方式讓一個正在運行的Rails應用程序告訴你它運行在哪個版本的Ruby上?它不一定是來自網絡方面的:如果這更直接,我很樂意從服務器命令行中提出問題。

回答

1

設置PassengerLogLevel到2.在應用程序的產卵,你會看到包含此​​行:

>> ruby: ..path-to-ruby-interpreter... 
1

Ruby的對象定義了常量RUBY_VERSION。退房對象的其他RUBY_ *常量,太像RUBY_REVISION,RUBY_RELEASE_DATE等

2.0.0-p353 :007 > Object.constants.grep /RUBY/ 
=> [:RUBY_VERSION, :RUBY_RELEASE_DATE, :RUBY_PLATFORM, :RUBY_PATCHLEVEL, :RUBY_REVISION, :RUBY_DESCRIPTION, :RUBY_COPYRIGHT, :RUBY_ENGINE, :RUBYGEMS_ACTIVATION_MONITOR] 
+0

這很好,但我希望有些事情不需要修改正在運行的應用程序。 –