Apache-2.2

在 Apache2 中設置PassengerDefaultRuby

  • January 2, 2016

我遇到了伺服器錯誤,它告訴我它無法檢測到諸如 rake 之類的基本寶石。研究表明,Phusion Passenger 和 RVM 之間存在溝通錯誤。RVM建議PassengerDefaultRuby在伺服器的全域配置文件中進行設置,在我的例子中是/etc/apache2/apache2.conf. 當我插入這一行時:

PassengerDefaultRuby /usr/local/rvm/wrappers/ruby-1.9.3/ruby

重新啟動 Apache 時出現此錯誤:

Syntax error on line 39 of /etc/apache2/apache2.conf:
Invalid command 'PassengerDefaultRuby', perhaps misspelled or defined by a module not included in the server configuration

也許我將此程式碼放在錯誤的文件中?或者可能有其他問題?任何指導將不勝感激。

您需要檢查是否已mod_passenger載入模組:

# apachectl -M | grep passenger

您提到的選項包含在版本 4.0 Release Candidate 6中:

4.0 RC 5 和 RC 6 的變化

RC 5 和 RC 6 中最重要的變化如下:

Apache 的預設配置片段已更改!它現在必須包含一個PassengerDefaultRuby 選項。安裝程序已更新為輸出此選項。PassengerRuby 選項仍然存在,但它僅用於在不同的上下文中配置不同的 Ruby 解釋器。請參閱手冊了解更多資訊。

根據安裝方法,您可能擁有較早的版本。

引用自:https://serverfault.com/questions/528594