2013-11-20 91 views
4

我使用以下版本无效的命令“PassengerDefaultRuby”

Phusion Passenger version 4.0.25 

ruby 2.0.0p247 (2013-06-27 revision 41674) [i686-linux] 

Server version: Apache/2.2.22 (Ubuntu) 
Server built: Jul 12 2013 13:38:21 

我在的apache.conf

LoadModule passenger_module /usr/local/rvm/gems/ruby-2.0.0-p247/gems/passenger-4.0.25/buildout/apache2/mod_passenger.so 
PassengerRoot /usr/local/rvm/gems/ruby-2.0.0-p247/gems/passenger-4.0.25 
PassengerDefaultRuby /usr/local/rvm/wrappers/ruby-2.0.0-p247/ruby 

这里粘贴这三条线为每名乘客使用的指令是我安装红宝石

的细节
rvm rubies 

    ruby-1.9.3-p448 [ i686 ] 
=* ruby-2.0.0-p247 [ i686 ] 

如果我重新启动Apache,我收到以下错误。

[Wed Nov 20 15:04:13 2013] [warn] module passenger_module is already loaded, skipping 
Syntax error on line 242 of /etc/apache2/apache2.conf: 
Invalid command 'PassengerDefaultRuby', perhaps misspelled or defined by a module not included in the server configuration 
Action 'configtest' failed. 
The Apache error log may have more information. 
    ...fail! 

我做了很多谷歌搜索,但发现only one link哪些没有太大的帮助。

+0

你在这里做了什么修改/ etc/apache2/sites-enabled/mysite – Bijendra

+0

@Bijendra:嗨是的,我在sites-enabled/default中添加了虚拟主机详细信息 – Senthil

回答

2

您可能在Apache中加载了两个Phusion Passenger版本,一个较旧的版本和一个较新的版本。他们互相冲突。您需要卸载所有可以找到的Passenger痕迹,然后只安装最新版本。

+0

我能够复制这个错误信息确认安装Phusion Passenger: ubuntu @ ip-XXX-XX-XX-XXX:/etc/apache2/ sites-enabled $ which -a passenger /home/ubuntu/.rvm/gems/ruby-2.1.1/ bin/passenger – TheCatParty

+0

如何卸载它 – 2014-07-01 05:01:16

5

我在Ubuntu 10.04服务器上遇到同样的问题。就我而言,就像宏力说的那样,我装载了两个乘客版本。一个是来自Ubuntu存储库的软件包libapache2-mod-passenger,另一个是使用RVM安装的。为了使之与一个通过RVM安装工作,我通过运行

a2dismod乘客

卸载装有Ubuntu的软件包的模块,然后重装了Apache。