All work and no play makes Jack a dull boy

terça-feira, 14 de maio de 2013

Mais de um apache no servidor

 Você sabia que é possível ter múltiplas instâncias de apache no seu servidor? Sabia que ter 2 apaches no servidor (ou mais) já é algo previsto e préprogramando pelo próprio Apache?

Sim! Porém, antes é bom pensar: por que precisamos rodar múltiplas instâncias do apache no host?

Boa pergunta, afinal, com uma boa configuração em VirtualHost, você consegue ter tudo bem separado e organizado. Contudo esse caminho pode, com o tempo, te levar a um servidor pesado e lento.

Imagine que você trabalhe com diferentes sites, com requisitos distintos: um com mod_python outro com mod_php e etc); você configuraria isso tudo em uma instãncia apache, mas como resultado teria  grande consumo de memória.

Uma solução provida pelo próprio apache é ter configurações mais leves e separadas para, por exemplo, cada mod, usando portas diferentes.

E como fazer? Não precisa fazer uma série de sudo cp em tudo que é pasta.
$ sh /usr/share/doc/apache2.2-common/examples/setup-instance NOMEDAINSTANCIA



Por exemplo, você precisa separa sua instância de produção da instância de desenvolvimento:
$ sh /usr/share/doc/apache2.2-common/examples/setup-instance dev

O apache cuida de tudo para você, afinal ele já estava preparado para essa opção. O resultado será:
Setting up /etc/apache2-dev ...
Setting up /etc/init.d/apache2-dev ...
Setting up symlinks: a2enmod-dev a2dismod-dev a2ensite-dev a2dissite-dev apache2ctl-dev
Setting up /etc/logrotate.d/apache2-dev and /var/log/apache2-dev ...

Depois configure as portas para as instâncias do apache

$ vim /etc/apache2-dev/ports.conf

Alterando, por exemplo, para:

Listen 81


Listem 4431

Também faça a alteração em:
$ vim /etc/apache2-dev/sites-enabled/*

Agora para direcionar seu comandos para a instância do apache, use:

$ /etc/init.d/apache-dev

Para mais info leia o manual online ou o que está em:

$ vim /usr/share/doc/apache2.2-common/examples/setup-instance

Bem prático e rápido, não?

Nenhum comentário:

Postar um comentário