设置乘客:继续显示apache默认页面

时间:2012-10-16 17:22:35

标签: ruby-on-rails-3 apache centos passenger

我正试图让乘客上班,但我不断看到apache默认页面。我在inmotion VPS上使用centos 6.3。这是我到目前为止所做的:

  1. 宝石安装乘客。
  2. rvmsudo passenger-install-apache2-module
  3. 将以下代码粘贴到/usr/local/apache/conf/includes/post_virtualhost_global.conf中(这会加载到httpd.conf中)

    LoadModule passenger_module /home/username/.rvm/gems/ruby-1.9.3-p194/gems/passenger-3.0.17/ext/apache2/mod_passenger.so PassengerRoot /home/username/.rvm/gems/ruby-1.9.3-p194/gems/passenger-3.0.17 PassengerRuby /home/username/.rvm/wrappers/ruby-1.9.3-p194/ruby

    <VirtualHost 123.123.123.123:80> ServerName http://XXXXXX.inmotionhosting.com # !!! Be sure to point DocumentRoot to 'public'! DocumentRoot /home/username/rails/current/public <Directory /home/username/rails/current/public> # This relaxes Apache security settings. AllowOverride all # MultiViews must be turned off. Options -MultiViews </Directory> </VirtualHost>

    编辑:不确定为什么这不正确格式化。它在文本编辑器中的内衬和标签很好。

  4. 在etc / hosts中的
  5. 有一行:

    123.123.123.123 XXXXXX.inmotionhosting.com XXXXXX

  6. 我通过/etc/init.d中的sudo service httpd restart重新启动了apache。

  7. 仍显示apache默认页面
  8. 有什么想法吗?感谢

1 个答案:

答案 0 :(得分:2)

我偶然发现这个1岁的帖子上有类似的问题,但没有一条评论对我有用。所以我只是为那些寻求帮助的人增加2美分。

如果您看到Apache默认页面,则表示可能没有运行phusion乘客。当您启动/停止/重新启动apache服务器时,您可能已经看到一条警告消息,该服务器表示已经加载了phusion乘客模块,正在跳过。

因此,Apache已跳过您在conf文件中添加的最新LoadModule行。

然后检查apache配置文件中为错误日志设置的目录中的error.log。 (centos的httpd.conf)

在我的情况下,它抱怨它无法在PassengerRuby中设置的目录中找到监视程序。这证实装载的乘客模块不是我刚刚添加的。这可能发生了,因为我现在正在使用RVM,但是前一段时间也以root身份安装了旧版本的Passenger。所以我查看了Apache root下的config.d目录,有一个文件“passenger.conf”正在加载旧版本的Passenger。

我删除了文件,保留了新的LoadModule - 从安装apache2-module的Phusion Passenger给我的指令中复制,重新启动apache服务器,没有警告信息,并且乘客工作。