Servidor redirecionando para o primeiro site

2

Eu tenho tentado sem sucesso configurar o Ubuntu Desktop 32bit no Virtualbox como um host virtual baseado em nome. O endereço IP do host virtual é 192.168.0.105.

As raízes do documento são /var/www/example1.com/public_html/index.html e /var/www/example2.com/public_html/index.html

Os arquivos de configuração são /etc/apache2/sites-available/example1.com.conf e /etc/apache2/sites-available/example2.com.conf

Conteúdo de example1.com.conf

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName example1.com
    ServerAlias www.example1.com
    DocumentRoot /var/www/example1.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Conteúdo de example2.com.conf

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName example2.com
    ServerAlias www.example2.com
    DocumentRoot /var/www/example2.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Conteúdo de /etc/hosts

192.168.0.105 example1.com
192.168.0.105 example2.com

Desativei os arquivos de configuração padrão usando a2dissite , habilitei example1.com.conf e example2.com.conf usando a2ensite e recarreguei o apache2.

Sempre que digito example2.com ou example1.com, o navegador não está me levando para o site configurado, mas quando digito o endereço IP dos servidores, ele funciona, mas direciona apenas para example1.com. Qualquer ajuda nesse sentido será profundamente respeitada e muito apreciada.

    
por Nazmul 12.05.2018 / 15:48

1 resposta

0

Sua configuração parece boa. Eu acho que você não emitiu a2ensite :

O diretório /etc/apache2/sites-available apenas contém (uma coleção de) sites disponíveis . Para realmente ativar , você precisa executar

a2ensite example1.com.conf
a2ensite example2.com.conf
systemctl reload apache2

Os dois primeiros comandos não fazem nada além de criar links simbólicos no diretório /etc/apache2/sites-enabled que aponta para os respectivos arquivos no diretório sites-available :

root@myhost:/etc/apache2# ll sites-enabled/
...
lrwxrwxrwx 1 root root   35 Mär  9 19:06 000-default.conf -> ../sites-available/000-default.conf
lrwxrwxrwx 1 root root   35 Mär 18 16:48 example1.com.conf -> ../sites-available/example1.com.conf
lrwxrwxrwx 1 root root   35 Mär 18 16:48 example2.com.conf -> ../sites-available/example2.com.conf

O Apache lê os arquivos em /etc/apache2/sites-enabled e ignora /etc/apache2/sites-available . A ideia geral é:

  1. coloque todos os arquivos de configuração do host virtual em sites-available
  2. ative ou desative-os usando a2ensite $config_file ou a2dissite $config_file .

Observe que o preenchimento automático geralmente funciona, ou seja,% TAB_BR TAB TAB lista as configurações disponíveis começando com a2ensite ex .

Depois de ex ou a2ensite , você precisa tornar o apache ciente disso emitindo a2dissite . Os comandos lhe dirão algo para esse efeito.

    
por PerlDuck 12.05.2018 / 17:21