O Apache 2.2 não pode configurar um VirtualHost

2

Estou tentando configurar um novo host virtual newsletter.mydomain.com .

Também estou usando mod_proxy para rotear todo o tráfego HTTP para o meu servidor de aplicativos (com o IP de 1.1.1.1).

mod_proxy funciona muito bem, mas estou com dificuldades para configurar o host virtual:

Quando eu tento navegar no meu VHOST, tudo que eu ganho é meu site principal (em vez disso, o DocumentRoot eu configurei para ele, ou em outra tentativa - uma declaração ProxyPass que deveria rotear tráfego)

Aqui está um breve trecho do meu arquivo httpd.conf

ServerRoot "C:/xampp/apache"
Listen 80

NameVirtualHost _default_:80

ServerAdmin postmaster@localhost

ServerName www.mydomain.com:80

DocumentRoot "C:/xampp/htdocs"

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>


<VirtualHost _default_:80>
    ServerName newsletter.mydomain.com
    ProxyPreserveHost On
    ProxyPass / http://1.1.1.1:8080/Newsletter/
    ProxyPassReverse / http://1.1.1.1:8080/Newsletter/
</VirtualHost> 

ProxyPass / http://1.1.1.1/
ProxyPassReverse / http://1.1.1.1/

O site principal funciona gr8 - Virtual host - de nada! alguma ideia sobre esta questão? (Usando o Windows 2008 server R2)

    
por Shai 19.03.2012 / 11:32

1 resposta

0

Altere _default_:80 para *:80 em ambos os locais. A cláusula _default_ é especificamente não usada para NameVirtualHost de VHosts roteados.

No entanto, isso ainda não funcionará como você espera. Assim que você declarar *:80 a NameVirtualHost , seu site "padrão" nunca será exibido. (por: link )

O que você quer é algo mais assim:

ServerRoot "C:/xampp/apache"
Listen 80

# Route all traffic based on Host: header
NameVirtualHost *:80

ServerAdmin postmaster@localhost

ServerName www.mydomain.com:80

# This will never be used:
DocumentRoot "C:/xampp/htdocs"

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

# All non-matching Host: headers use the first VirtualHost:
<VirtualHost *:80>
    ServerName mydomain.com
    ServerAlias www.mydomain.com

    DocumentRoot "C:/xampp/htdocs"
    ProxyPass / http://1.1.1.1/
    ProxyPassReverse / http://1.1.1.1/
</VirtualHost>

# Specific VirtualHost for "newsletter.mydomain.com":
<VirtualHost *:80>
    ServerName newsletter.mydomain.com

    ProxyPreserveHost On
    ProxyPass / http://1.1.1.1:8080/Newsletter/
    ProxyPassReverse / http://1.1.1.1:8080/Newsletter/
</VirtualHost> 
    
por 19.03.2012 / 11:55

Tags