A nova linha que o apache está utilizando para a configuração de hosts virtuais, é melhor adaptada e segura. Com a crescente utilização do Apache para implementar servidores web e um aumento na demanda por sites hospedados em um mesmo servidor, houve uma melhora na configuração de hosts virtuais, que consiste em utilizar um arquivo para cada site, sistema ou portal, possibilitando uma melhor manutenção nos servidores sem que isso afete o seu funcionamento.
Dentro do diretório /etc/apache2 existem dois diretórios responsáveis por viabilizar a entrada e saída de sistemas para internet. O subdiretório sites-available é o local onde os arquivos serão criados pelo administrador, que, para habilitá-los, necessitará usar o comando a2ensite ou fazer link simbólico para o diretório sites-enabled, que é o local onde o apache faz leitura. Pode-se verificar dentro do arquivo apache.conf próximo, ou no final do arquivo, a inclusão deste diretório.
# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/
É aconselhável que o nome dos arquivos tenha referência com o domínio, apenas para melhor identificação. Caso seja necessário retirar um site do ar, será preciso desabilitar o link simbólico do diretório sites-enabled, para isso usa-se o comando a2dissite. O apache foi um dos primeiros servidores web a suportar host virtual. Suas diretivas são:
- <virtualHost> : Contém diretivas que se aplicam somente a uma máquina específica ou endereço de IP
- ServerName : Nome do domínio a ser usado
- ServerAdmin : Email do responsável pelo site, que receberá mensagem do apache caso houver erros.
- DocumentRoot : Diretório onde estão armazenados os arquivos do site
- ErrorLog : Local e arquivo onde o apache gera os logs de erro
- ServerAlias : Nomes alternativos para complementar o domínio
- RedirectMatch : Faz redirecionamento de URL
Pode-se fazer o download de um arquivo contendo exemplo de configuração em host virtual no link
virtualhost.conf, ou seguir o exemplo abaixo.
<VirtualHost *>
ServerName cleysinhonv.gnu-lia.org
ServerAlias cleysinhonv.gnu-lia.org cleysinhonv
ServerAdmin cleysinhonv@gmail.com
DocumentRoot "/home/usuario/public_html"
ErrorLog /var/log/apache2/gnu-lia-error.log
RedirectMatch ^/$ www.gnu-lia.org/cleysinhonv
</VirtualHost>
Obs.: Esses dados são exemplos.
Esses parâmetros de configuração são suficientes para atender a necessidade de host virtual.