Criando virtualhosts no Linux e no Windows

Eu sempre defendo um ambiente de desenvolvimento bem organizado. De um tempo pra cá, venho trabalhando em dois ou três projetos simultaneamente, então meu servidor local está sempre cheio de pastas de testes e etc…

Para facilitar o acesso as mesmas, criei diversos virtualhosts na minha máquina, transformando cada diretório em um site diferente. Mas como assim? Vou explicar abaixo como configurar um virtualhost em sua máquina para ficar mais claro. (estou levando em consideração que você utiliza o Apache como servidor HTTP, beleza?)

linux-pinguim-logo

Criar Virtualhost no Apache (Linux)

Obviamente, vou começar pelo mais fácil. Criar virtualhosts no Linux é super rápido e prático, basta você ter acesso como root (ou super usuário, se preferir). Vamos lá.

Passo 1: Já como “root”, abra o arquivo /etc/apache2/sites-available/default , e não altere nada que já existe aí, apenas adicione no final do arquivo, as seguintes linhas:

<VirtualHost *:80>
    ServerName nome-do-seu-site.com
    DocumentRoot diretorio-onde-esta-seu-site
    SetEnv APPLICATION_ENV "development"
    <Directory diretorio-onde-esta-seu-site>
        DirectoryIndex index.php
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

O que isso significa?

Linha 1: Tag de abertura do virtualhost, direcionando para a porta 80

Linha 2: ServerName – coloque o nome do site local, que você irá acessar na URL (ex.: meusite.com)

Linha 3: DocumentRoot – coloque o caminho do diretório que está seu site (ex.: /var/www/meusite)

Linha 4: APPLICATION_ENV – define se seu site está em ambiente de desenvolvimento, produção (prodution) ou outro (testing, staging, etc..). Como estamos desenvolvendo ainda, coloque como “development” (não é obrigatório, pode alterar ou nem colocar se não quiser)

Linha 5: abrimos a tag que fala sobre o diretório. Repete-se aí o diretório que está seu site.

Linha 6 à 9: Definições do apache sobre o diretório. A princípio, em ambiente de desenvolvimento, as configurações passadas acima são as ideais. Se quiser, dê uma olhada nas variações possíveis no site do Apache. Observe apenas a linha 6, onde você define o primeiro arquivo que deve ser carregado quando acessar o virtualhost.

Passo 2: Feito isto, você só precisa agora definir que ao acessar o seu site (no exemplo “meusite.com”) ele não seja procurado na internet, e sim no seu próprio computador. Abra, também como root, o arquivo /etc/hosts e adicione no final do arquivo o seguinte:

127.0.0.1   nome-do-seu-site.com

Passo 3: Salve o arquivo e pronto, seu virtualhost está criado. Agora só falta reiniciar o servidor Apache para as configurações feitas se tornarem ativas. Utilize o comando service apache2 restart .

Pronto, agora tente acessar pelo navegador o endereco “meusite.com” e verá que está acessando diretamente a pastinha que você queria. Caso dê algum erro durante a reinicialização do Apache, verifique se você digitou tudo direitinho, pois uma letrinha a menos em qualquer linha e o Apache não conseguirá ser inicializado.


windows-bandeira-logo

Criar virtualhost no Apache (Windows)

Passo 1: Procure pelo arquivo httpd.conf (no meu caso, no Windows eu utilizo um servidor embutido do Zend, e este arquivo está localizado em C:\Program Files(x86)\Zend\Apache2\conf\httpd.conf)

Passo 2: Dentro do httpd.conf, adicione o seguinte:

<VirtualHost *:80>
    ServerName nome-do-seu-site.com
    DocumentRoot "diretorio-onde-esta-seu-site"
    SetEnv APPLICATION_ENV development
    <Directory "diretorio-onde-esta-seu-site">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

No Windows, as configurações são parecidas, mas alguns detalhes devem ser reparados. Por exemplo a adição de aspas duplas no caminho dos diretórios.

Passo 3: Após isto, vá ao arquivo hosts, localizado em C:\Windows\System32\drivers\etc\hosts . Assim como no Linux, é necessário permissão de administrador para alterar este arquivo. Adicione no final do mesmo o seguinte:


127.0.0.1    nome-do-seu-site.com

E pronto, seu virtualhost no Windows foi criado. Agora precisamos reiniciar o apache.  Para facilitar, utilize o atalha “Tecla do WINDOWS + R” para abrir o “Executar” ou vá em Windows -> Todos os Programas -> Acessórios -> Executar.  Aberta a janelinha, digite “services.msc” sem aspas e dê ENTER. Uma nova janela se abrirá. Procure na lista o serviço do Apache, clique sobre ele com o botão direito e selecione a opção “Reiniciar”. Pronto, já está configurado e ativo o seu virtualhost. Acesse pelo navegador “meusite.com” e verá o resultado.


Novidade na versão 5.4 do PHP

Na versão 5.4, o PHP já trás um servidor embutido, não sendo necessário nem mesmo a instalação do Apache para rodar. Para utilizar este recurso, você deve acessar por linha de comando a raiz do seu site / sistema, lá onde se encontra o index.php, e digitar o seguinte:


php -S localhost:8080

Pronto, basta digitar novamente “localhost:8080” em seu navegador e está com seu servidor rodando. Existe a desvantagem clara de a cada inicialização do sistema, será preciso rodar o comando novamente, porém existe a grande vantagem do PHP ficar monitorando o que acontece com seu servidor em tempo real, listando tudo no shell (ou no prompt), não sendo necessário acessar arquivos de log para debugar o código.


E então, as dicas foram úteis? Comente aqui e diga o que achou da ideia de criação de virtualhosts e também do servidor embutido no PHP 5.4 . Se você já utiliza, por favor me fale sobre sua experiência com a tecnologia. Vamos compartilhar o conhecimento!


Marcado com: , ,
Publicado em Tecnologia, VirtualHosts
  • Cléber Alves

    Grade sacada! Também sou muito a favor de manter o ambiente de desenvolvimento prático e organizado. Torna o trabalho muito mais fácil, e prazeroso.
    Parabéns pela iniciativa de demonstrar a configuração dos virtuais hosts nos dois SO. Apesar da discórdia, nem todo desenvolver PHP consegue manter uma rotina de trabalho exclusivamente no Linux, seja por politica na empresa ou mesmo qualquer outro motivo.
    Abraço.

    • http://www.ricardobrusch.com.br Ricardo Brusch

      Fala Cléber! Obrigado pelo comentário! Infelizmente na maioria dos casos não conseguimos manter o trabalho apenas no Linux, sempre precisamos utilizar um excel da vida (dominar o Calc é um inferno), e esse é o único motivo que volto para o Windows hoje em dia, pois faço questão de manter o ambiente de desenvolvimento exclusivamente no Linux, e isso chefe nenhum me convence do contrário, hehehe…

      Mais uma vez obrigado por compartilhar tua ideia! Um abraço.

  • Pingback: Rodar o Zend Framework pela primeira vez » Ricardo Brusch

Volte Sempre!
Meus artigos te ajudaram de alguma forma e você não sabe como me agradecer? Que tal me pagar uma Coca-Cola bem gelada?

Sobre o autor

Me chamo Ricardo Brusch, sou programador e desenvolvedor de sistemas para internet. Também sou aspirante a escritor, e você pode ler alguns de meus contos malucos em contos.ricardobrusch.com.br.
Parceiros





Publicidade