Como configurar virtual host no Apache Por

Nestes ultimos tempos devido aos vários projetos em andamento, tive a necessidade de criar vários dominios virtuais em uma unica instalação do Apache, após pesquisar e alguns testes sem sucesso cheguei a solução que apresento no artigo. Abaixo está documentado como configurar um virtualhost no Apache em Windows, de forma rápida e símples.

Se alguém se perguntou porquê Windows? Pois, não são poucos os desenvolvedores web que utilizam o Windows como plataforma. E abordo o Linux, pois quem domina o Linux como servidor de hospedagem pode dispensar o tutorial.

Configurando um virtualhost no Apache

Antes de configurar seu virtualhost no Apache você precisa:

  • Servidor Web Apache 2.x.x (funcionando);
  • Sistema operacional Windows, neste tutorial testado em Windows XP;
  • Conhecer um pouco sobre o httpd.conf, arquivo utilizado para configurar o Apache.

Para criar, configurar ou adicionar um domínio virtual (virtualhost) ao seu servidor Apache é necessário editar o arquivo httpd.conf, arquivo responsável pela configuração do servidor web Apache. E também o arquivo host no Windows. Toda vez que acessamos um site, independentemente do navegador, primeiro o sitema operacional  procura a URL em localhost (dentro do computador), após isso percorre os diversos roteadores mundo a fora. Então o que precisamos fazer é adicionar o dominio desejado ao sistema operacional e configurar o Apache para servir este site toda vez que este nome de dominio for solicitado no navegador.

1º Passo – O arquivo httpd.conf

Primeiramente procure em seu arquivo httpd.conf (arquivo de configuração do Apache) a seguinte linha:

#NameVirtualHost *:80

Por padrão esta linha vem comentada abaixo dela adicione:

NameVirtualHost localhost:80

<VirtualHost 127.0.0.1>
ServerAdmin admin@localhost
DocumentRoot “C:/Apache/htdocs”
ServerName localhost
ErrorLog logs/localhost_error.log
CustomLog logs/localhost_access.log common
</VirtualHost>

Assim você informa para responder por domínios virtuais pela porta 80, porta responsável pela comunicação outros sites na internet. E também configura o dominio padrão, em nosso caso localhost.

2º Passo – Criando / Adicionando virtualhost

Ainda no mesmo arquivo você irá adicionar as seguintes linhas e sempre que desejar um novo criar virtualhost em seu servidor Apache.
<VirtualHost 127.0.0.1>
DocumentRoot "C:/pasta-dos-sites/para-do-seu-site"
ServerName nome-do-dominio
ServerAlias *.nome-do-dominio
<Directory "C:/pasta-dos-sites/para-do-seu-site/casos">
Options All Includes Indexes
</Directory>
</VirtualHost>
Nas linhas DocumentRoot e <Directory> subtitua o texto entre aspas pelo endereço da pasta do site, durante minhas pesquisas alguns estava tendo problemas devido a barra, portanto de preferência pela barra comum.
Nos campos ServerName e ServerAlias substitua nome-do-dominio pelo nome desejado procure evitar domínios existentes na internet, pois impossibilita você acessar estes sites de forma convencional, tenha por opção apenas o nome do cliente, por exemplo.

3º Passo – Arquivo Hosts do Windows

Agora devemos configurar o arquivo de host, lembrando que isto é valido para configuração de dominio virtual Windows XP. Sinceramente não efetuei testes em outras versões do Windows, caso alguém realize testes em outras versões deixe nos comentário que faço um update no post. Utilizando este arquivo dispensa o uso de instalação de servidores DNS.

Abra o arquivo host localizado em C:\WINDOWS\system32\drivers\etc\

No fim deste arquivo adicione o nome do domínio.

127.0.0.1     nome-do-dominio

4º Passo – Para Finalizar

Reinicie o servidor Apache e pronto basta digitar o nome que você cadastrou anteriormente na URL do seu navegador para testar.

Agora você já sabe como instalar e configurar um virtualhost no servidor Apache em Windows esta dada a dica qualquer leitor que tiver algo a acrescentar deixe nos comentários.

Add comment

One response : “ Como configurar virtual host no Apache ”

  1. 1
    Tiago de Souza :

    Eu estou acessando o virtual host mas tá abrindo a página do host principal, o que eu faço? eu coloquei o local de destino do virtual host para um diretório diferente do host principal mas ainda continua o problema.

Deixe seu comentário