Existe um equivalente em apache deste truque de arrumar o samba?

2

Ao configurar o samba, eu uso esse método como sugerido pelos documentos oficiais.

testparm -s smb.conf.master > smb.conf

Isso significa que eu posso manter a versão totalmente comentada (smb.conf.master), mas eu também recebo uma versão simplificada e facilmente passível de ser analisada por seres humanos e a versão da máquina no smb.conf

Existe um método equivalente para o arquivo de configuração do apache?

    
por blndcat 18.07.2009 / 03:20

3 respostas

7

Eu faço isso com frequência:

grep -v '^#' apache.conf > apache-stripped.conf

Se você quiser ser realmente agressivo e remover linhas em branco também:

egrep -v '^(#|$)' apache.conf > apache-stripped.conf

Devo salientar que a única razão para fazer isso é facilitar a leitura se você achar os comentários perturbadores. O Apache, claro, não se importa. Não há desempenho obtido ao remover os comentários da configuração do Apache, além de alguns microssegundos salvos na inicialização.

    
por 18.07.2009 / 03:37
1

Você pode testar o arquivo de configuração com apachectl configtest (geralmente chamado de apache2ctl em sistemas debian). Esse é o equivalente mais próximo em que consigo pensar.

Não seria muito difícil escrever um script que combinasse o configtest com outra coisa (grep, awk, sed etc.) para duplicar o que você está fazendo com o testparm.

Pessoalmente, eu encontraria um httpd.conf sem comentários para ler mais do que um que tivesse alguns comentários, há algum motivo específico para você estar tentando fazer isso?

    
por 18.07.2009 / 03:23
0

este é realmente um comentário sobre a resposta de Insyte, mas não posso formatá-lo de forma legível como um comentário. mais isso é muito longo para um comentário:)

sed -e 's/^[[:space:]]\+\(#\|\$\)/#/'  apache.conf | grep -v '^#' | uniq

usando o sed, isso eliminará os espaços em branco antes dos comentários de linha completa e antes de todos os marcadores de fim de linha. canalizar através do uniq removerá todas as linhas vazias consecutivas, exceto a primeira linha vazia (isto é, deixando uma linha em branco entre os 'parágrafos'). OMI, isso torna mais legível.

usar o uniq aqui tem o pequeno risco de que quaisquer outras linhas duplicadas consecutivas sejam excluídas, mas isso não é um problema na prática.

também, para responder à sua pergunta sobre descascar # # comentários simples, mas não ############################################################################# . '#:', por exemplo. então use algo como:

sed -e 's/^[[:space:]]\+\(#\|\$\)/#/'  apache.conf | egrep -v '^#[^:]|#$' | uniq
    
por 18.07.2009 / 04:45