2013-05-14 60 views
0

是卡上配置Apache就可以提供在两个不同的地点与名称的虚拟主机:Apache2的多个基于域名的虚拟主机与导轨/机架

http://experimental/ 

http://api.experimental/ 

在一台机器上这个设置工作正常,并且apache报告这个:

apachectl -D DUMP_VHOSTS 
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName 
VirtualHost configuration: 
wildcard NameVirtualHosts and _default_ servers: 
*:*     is a NameVirtualHost 
     default server experimental (/etc/apache2/sites-enabled/00-nowa.conf:3) 
     port * namevhost experimental (/etc/apache2/sites-enabled/00-nowa.conf:3) 
     port * namevhost api.experimental (/etc/apache2/sites-enabled/00-nowa.conf:15) 
Syntax OK 

在第二台机器上这样做ES无法正常工作,这两个URL最终指向第一个应用程序,它是相同的命令的输出,其具有附加的线:

apachectl -D DUMP_VHOSTS 
apache2: apr_sockaddr_info_get() failed for experimental 
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName 
[Tue May 14 15:36:08 2013] [warn] NameVirtualHost *:80 has no VirtualHosts 
[Tue May 14 15:36:08 2013] [warn] NameVirtualHost *:80 has no VirtualHosts 
VirtualHost configuration: 
wildcard NameVirtualHosts and _default_ servers: 
*:*     experimental (/etc/apache2/sites-enabled/00-nowa.conf:3) 
*:*     api.experimental (/etc/apache2/sites-enabled/00-nowa.conf:15) 
Syntax OK 

每个电机的虚拟主机文件是此为破碎一个:

<VirtualHost *> 
    ServerName experimental 

    RailsEnv production 
    DocumentRoot /home/nowa/nowa_app/nowa/current/public 

    <Directory /home/nowa/nowa_app/nowa/current/public > 
    Allow from all 
    Options -MultiViews 
    </Directory> 
</VirtualHost> 

<VirtualHost *> 
    ServerName api.experimental 

    RackEnv production 

    PassengerMinInstances 2 
    PassengerMaxPoolSize 10 

    DocumentRoot /home/nowa/nowa_app/services/api_gateway/current/app 
</VirtualHost> 

而且工作

<VirtualHost *> 
    ServerName experimental 
    RailsEnv production 
    DocumentRoot /home/nowa/nowa_app/nowa/current/public 
     <Directory /home/nowa/nowa_app/nowa/current/public > 
     Allow from all 
     Options -MultiViews 
     </Directory> 
</VirtualHost> 

<VirtualHost *> 
    ServerName api.experimental 

    RackEnv production 

    PassengerMinInstances 2 
    PassengerMaxPoolSize 10 


    DocumentRoot /home/nowa/nowa_app/services/nowa_api_gateway/current/app 
</VirtualHost> 

为什么apachectl -D DUMP_VHOSTS的输出不同? 我错过了什么? :C

回答

2

当被问及对#httpd IRC房间,原来阿帕奇误解

<VirtualHost *> 

为一个基于IP的虚拟主机条目,而不是基于一个名称,将其更改为这个固定:

<VirtualHost *:80> 

这是因为了NameVirtualHost是这样定义的破服务器上:

NameVirtualHost *:80 

完全干活g config:

<VirtualHost *:80> 
    ServerName experimental 

    RailsEnv production 
    DocumentRoot /home/nowa/nowa_app/nowa/current/public 

    <Directory /home/nowa/nowa_app/nowa/current/public > 
    Allow from all 
    Options -MultiViews 
    </Directory> 
</VirtualHost> 

<VirtualHost *:80> 
    ServerName api.experimental 

    RackEnv production 

    PassengerMinInstances 2 
    PassengerMaxPoolSize 10 

    DocumentRoot /home/nowa/nowa_app/services/api_gateway/current/app 
</VirtualHost>