Apache compilado - sem pastas conf-enabled / conf-available / mods-available etc.

0

Eu apenas compilei o apache (httpd-2.4.23) usando estes comandos:

APACHE_CONFDIR=/etc/apache2
APACHE_ENVVARS=$APACHE_CONFDIR/envvars
CFLAGS="-O2 -DBIG_SECURITY_HOLE"

./configure --prefix=$APACHE_CONFDIR
make
make install

No entanto, existem pastas conf-enabled / conf-available / mods-available etc. Eu faço algo errado ou algum tipo de nova estrutura de pastas?

Existem pastas conf e modules

Além disso, não há comandos como a2ensite , a2enmod etc. em /usr/sbin e não consigo encontrá-los em lugar nenhum. Obrigado

    
por simPod 18.11.2016 / 12:16

2 respostas

1

Uma grande parte do que uma distribuição como o Ubuntu faz é integrar um grande número de softwares diferentes de uma infinidade de origens diferentes e combiná-los em um sistema coerente. Para fazer isso, em muitos casos, o software original precisa ser adaptado ou estendido.

Esse é o caso do Apache. A estrutura inteira *-available e *-enabled não é o projeto Apache fazendo, por assim dizer, mas parte de como o Debian integrou o Apache HTTPd em sua distribuição. Portanto, você o encontrará no Debian e em distribuições baseadas no Debian, como o Ubuntu, mas não no Apache "original" que você mesmo compilou.

Mas não é tão difícil construir essas estruturas sozinho. Você basicamente precisa criar as pastas sozinho, e ter o Apache lendo as configurações lá com a diretiva IncludeOptional em apache.conf . Isso é basicamente o que a versão Debian de apache.conf faz:

...
# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf
...
# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf

# Include the virtual host configurations:
IncludeOptional sites-enabled/
...

Os comandos como a2ensite , a2enmod e assim por diante também fazem parte da integração do Debian. Na verdade, a maioria deles são links simbólicos em a2enmod , que é um script em Perl. Todos eles basicamente adicionam ( a2en* ) ou removem ( a2dis* ) os links simbólicos do respectivo diretório *-available para o diretório *-enabled . Por exemplo, a2ensite mysite.conf cria um symlink em site-enabled/mysite.conf que se refere a site-available/mysite.conf . E o diretório sites-enabled pode ser integrado em apache.conf , conforme mostrado acima.

Você pode criar os links simbólicos com ln -s ou escrever um pequeno roteiro no idioma de sua preferência para fazer isso.

    
por Henning Kockerbeck 18.11.2016 / 12:48
1

Essas coisas são todas específicas do Debian; eles não estão presentes no Apache "original", apenas na versão modificada fornecida no Debian (e, portanto, também no Ubuntu).

Portanto, não, nada está errado com a sua instalação, mas muitos dos recursos específicos do Debian que você pode encontrar não se aplicam a ele.

A propósito, eu não sei por que você precisa do Apache 2.4.23, mas em qualquer caso ele está disponível em este PPA . Esses pacotes devem incluir a2ensite et al.

    
por fkraiem 18.11.2016 / 12:32