Práticas Recomendadas para Gerenciar o httpd.conf para diferentes ambientes

1

Temos vários ambientes diferentes (desenvolvedor dekstop, integração, QA, prod) que devem ter variações ligeiramente diferentes do mesmo arquivo httpd.conf. Como exemplo, o arquivo httpd.conf configura que o httpd deve atuar como um proxy reverso e proxy de certas URLs para o Jetty, mas o nome do host da instância do Jetty é diferente em cada ambiente.

Existe uma prática recomendada para gerenciar esses tipos de diferenças? Eu olhei em volta da documentação do apache para o arquivo httpd.conf e não vi nada que faça o que eu preciso.

    
por James Kingsbery 11.01.2011 / 22:57

1 resposta

4

Divida as seções exclusivas em arquivos separados e, em seguida, use as diretivas Include no http.conf principal para incluir outros arquivos de configuração. Por exemplo, você pode incluir essas inclusões em IfDefine seções e, em seguida, usar a opção de inicialização de linha de comando -D para definir variáveis para ativar ou desativar seções diferentes da configuração:

<IfDefine DEVELOPER>  
  Include developer.conf
</IfDefine>

e depois:

apachectl start -D DEVELOPER

Parece-me mais limpo usar arquivos conf incluídos, mas é claro que você pode colocar todas as suas configurações em um arquivo dentro do ifdefs também.

Pontos de bônus para automatizar tudo isso com uma ferramenta de gerenciamento de configuração como cfengine ou fantoche, é claro.

    
por 11.01.2011 / 23:11