Como organizar dois hosts virtuais com o apache?

2

Eu tenho dois domínios hospedados em um servidor. Estou criando dois arquivos em /etc/httpd/conf.d : first.conf e second.conf . Todo arquivo tem o mesmo conteúdo:

NameVirtualHost *
<VirtualHost *>
    ServerName first.example.com
    DocumentRoot /home/me/first
</VirtualHost>

Quando terminar, tenho um conflito. Apenas o segundo arquivo funciona. Todas as solicitações vão para /home/me/second . Não importa qual domínio eu esteja usando. Como resolver isso? O que estou fazendo errado?

ps. É muito importante para mim ter muitos arquivos individuais, um para cada nome de domínio. E eu deveria ser capaz de remover facilmente qualquer um deles, sem afetar os outros. E eu não quero tocar configurações padrão do apache .. Eu acho que é possível fazer o mesmo sem VirtualHost , mas algumas outras instruções. Eu não consigo lembrar o nome dele: (

    
por yegor256 27.07.2010 / 18:00

5 respostas

5

Coloque o namevirtualhost em outro arquivo de configuração, como o apache (2) .conf ou o httpd.conf (dependendo da sua distribuição). No debian / ubuntu o lugar certo seria o fim do apache2.conf.

Você só precisa do nameVirtualHost uma vez em toda a sua configuração.

    
por 27.07.2010 / 18:47
0

Tente excluir NameVirtualHost em second.conf

    
por 27.07.2010 / 18:02
0

Mova o host nameVirutual para fora do arquivo de configuração do site. Pertence à configuração do servidor (apache.conf ou http.conf).

Só para avisá-lo. O primeiro site receberá solicitações não cobertas por hosts virtuais. Este é o seu servidor padrão. Você pode querer configurar um site extra para lidar com este caso.

    
por 27.07.2010 / 22:19
0

Tenho certeza de que a diretiva Include lê arquivos do diretório conf.d em ordem alfabética. Se você puder criar uma convenção de nomenclatura para os arquivos que garantem a ordem desejada, você pode adicionar NameVirtualHost * a um único arquivo: talvez algo como '__NameVirtualHost.conf' ou algo assim. Isso permitiria que você removesse qualquer arquivo VirtualHost individual sem afetar os outros conforme desejado.

Você poderia provavelmente também ajustar sua geração de arquivos para gerar um único arquivo em vez de vários arquivos (afinal, eles poderiam ser concatenados juntos para funcionalidade equivalente). Assumindo que quando um host virtual é excluído, ele está sendo excluído na origem e o conjunto de arquivos é regenerado?

    
por 28.07.2010 / 08:11
0

Como você está acessando o servidor, através do nome do host?

Além disso, seu arquivo mostra first.example.com , suponho que o segundo tenha second.example.com. Você poderia postar o conteúdo completo do segundo arquivo?

    
por 28.07.2010 / 10:52

Tags