A configuração do host virtual do Apache não funciona para um host

1

Eu sou novo na configuração do Apache. Eu tenho dois aplicativos que preciso executar localmente, eles estão sendo executados em servidores diferentes - um no jboss e outro no Jetty. Agora, ambos usam o mesmo servidor Apache para servir arquivos estáticos.

Resolvi os problemas com o servidor jboss e jetty para a porta http (8080) e a porta ajp (8009). Ambas as inicializações de servidores sem conflitos de porta. Depois veio a parte de configuração do Apache.

O httpd.conf tem a definição para server1 (app1 no jboss), então adicionei uma referência a um vhostsfile e coloco a configuração para o server2 (app2 no jetty). O problema é que se eu tenho a referência ao vhostsfile, o app2 funciona bem, mas o app1 nunca é resolvido pelo Apache - "A URL solicitada / us / en_us não foi encontrada neste servidor"

No começo eu pensei que talvez eu devesse colocar a definição de ambos os servidores no arquivo vhosts e assim fiz. Coloque em definição para server1 abaixo server2 mas - app1 ainda não carregou enquanto app2 carregado como antes. Solicitações para app1 exibiam registros de acesso para app2.

Em seguida, no arquivo vhosts, eu troquei as definições, ou seja, coloquei a definição do servidor1 acima server2, agora ambos os aplicativos não foram carregados no navegador.

Espero não ser muito confuso aqui. App1 com apenas a definição do servidor1 (sem vhost) funciona. Ao adicionar a definição do servidor2 (em vhosts), o app1 pára de funcionar, mas o app2 funciona. Além disso, cada vez que a definição do servidor está acima da outra no arquivo vhosts, estava interceptando solicitações para ambos os aplicativos.

NameVirtualHost *:80

    <VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "C:/env/local/cust/httpd/docs/dummy-host.com"
    ServerName dummy-host.com
    ServerAlias www.dummy-host.com
    ErrorLog "logs/dummy-host.com-error.log"
    CustomLog "logs/dummy-host.com-access.log" common
</VirtualHost>

<VirtualHost app2.local.com:80>
    ServerAdmin [email protected]
    DocumentRoot "C:/app2"
    ServerName app2.local.com
    ErrorLog "logs/store-error.log"
    CustomLog "logs/store-access.log" common    
    <Directory "C:/app2">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

<VirtualHost app1.local.com:80>
   ServerAdmin [email protected]
   DocumentRoot "C:/workspace/app1"
   ServerName app1.local.com
   ErrorLog "logs/app1-error.log"
   CustomLog "logs/app1-access.log" common

   <Directory "C:/app1/">
       Options Indexes FollowSymLinks
       AllowOverride all
       Order allow,deny
       Allow from all
   </Directory>
</VirtualHost>
    
por SoltanG 18.02.2012 / 04:52

1 resposta

1

Você está quebrando a hospedagem virtual baseada em nome com os nomes de host nas definições <VirtualHost> .

Altere <VirtualHost app1.local.com:80> e <VirtualHost app2.local.com:80> para <VirtualHost *:80> e verifique se você tem um NameVirtualHost *:80 em algum lugar na sua configuração.

    
por 19.02.2012 / 00:30