Eu comecei a administrar uma série de servidores web baseados em CentOS em um novo trabalho, e depois de alguns anos usando servidores Linux baseados em Debian, eu me senti bastante confortável com a estrutura de arquivos do Apache ao longo das linhas abaixo: / p>
/etc/apache2
apache2.conf
conf.d/
envvars
mods-available
mods-enabled
ports.conf
sites-available
sites-enabled
Isso faz sentido para mim os módulos que estão disponíveis para mim, mas não necessariamente em uso, estão em mod-available
e os que estão no usuário estão em mods-enabled
, da mesma forma com o sites
diretamente. Concedido, estes são principalmente links simbólicos, mas eu posso entender porque é feito assim; Chegando ao sistema fresco Eu tenho uma idéia aproximada do que está acontecendo no sistema, olhando nos diretórios *enabled
relevantes.
Por comparação, a configuração do CentOS é assim:
/etc/httpd
conf
conf.d
logs -> ../../var/log/httpd
modules -> ../../usr/lib64/httpd/modules
run -> ../../var/run
Eu posso entender que posso ver quais hosts estão habilitados chamando apachectl -S
e apachectl -M
para ver os módulos, e renomear /conf.d/example.conf
para conf.d/example.conf.disabled
me permitiria desabilitar sites de maneira bastante simples também, mas eu não entendo por que eles são diferentes em primeiro lugar e, no momento, não tenho certeza das vantagens de fazer isso de uma forma ou de outra.
Existem páginas, posts de blog ou sites para ajudar a explicar as diferenças entre os dois e, possivelmente, algumas das ideias sobre o motivo de eles estarem configurados dessa maneira?
Agora eu estou cegamente seguindo a convenção que estou vendo no sistema de arquivos padrão do CentOS sem entender o porquê, o que não posso deixar de sentir me morderá quando eu menos esperar, como quando eu atravesso as permissões do selinux camada, ou algo similar.