0

在乘客身上运行一个 RoR 站点。乘客运行良好,但我不确定我设置 vHosts 的方式是否有问题,但它返回的是 apache 起始页,而不是我的应用程序。

当我跑

passenger-status

这是消息:

Version : 4.0.18
Date    : 2013-09-26 10:42:03 -0400
Instance: 20958
----------- General information -----------
Max pool size : 6
Processes     : 0
Requests in top-level queue : 0

----------- Application groups -----------
[USERNAME@gregorymurray relaunchradio]# 

这是我的 httpd.conf 中的乘客资料:

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

我在那里看到没问题,这是我网站主目录中的 vhost.conf 文件:

ServerName gregorymurray.com
ServerAlias gregorymurray.com
DocumentRoot /var/www/vhosts/gregorymurray.com/relaunchradio/public
PassengerAppRoot /var/www/vhosts/gregorymurray.com/relaunchradio

<Directory "/var/www/vhosts/gregorymurray.com/relaunchradio/public">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>

RailsEnv production
RailsBaseURI /

这是我在运行过程中遵循的两个链接:

http://www.twohard.com/blog/setting-rails-passenger-mediatemple-dv35-servers

https://coderwall.com/p/lu3nfa

4

1 回答 1

0

您确定 apache2 正在查找 vhost.conf 文件吗?您是否使用某种需要将该文件放在您网站的主目录中的共享主机?因为,这不是正常的设置。虚拟主机文件属于 /etc/apache2 或 /etc/httpd,具体取决于使用的是 Ubuntu 还是 centOS。查看您的 apache conf 文件以找出它在哪里寻找虚拟主机。

打开 /etc/httpd/conf/httpd.conf 并查找 vhost.conf。或者查找 gregorymurray.com 的完整路径的 Include 指令。我怀疑会找到任何一个。这意味着您需要将 vhost.conf 移动到 /etc/httpd/conf/sites-enabled/vhost.conf 并在乘客模块内容上方的 httpd.conf 中添加 Include sites-enabled/。

将您的 vhost.conf 放在您的网站目录中需要您更改 httpd.conf 以在该网站目录中查找虚拟主机 conf 文件。这不是默认设置或常规设置。

于 2013-09-26T15:09:09.710 回答