Iniciante Fundamentos

Arquivos de configuração

A configuração do Apache fica em arquivos de texto. O arquivo principal muda de nome conforme a distribuição: apache2.conf no Debian/Ubuntu e httpd.conf no RHEL/CentOS.

Estrutura no Debian/Ubuntu

A pasta base é /etc/apache2. A configuração é dividida em vários arquivos:

/etc/apache2/apache2.conf      # arquivo principal
/etc/apache2/ports.conf        # portas (Listen)
/etc/apache2/sites-available/  # configs de sites disponíveis
/etc/apache2/sites-enabled/    # sites ativos (links)
/etc/apache2/conf-available/   # trechos de config diversos
/etc/apache2/mods-available/   # módulos disponíveis

Padrão available/enabled

No Debian, você cria a config em *-available e ativa criando um link em *-enabled. Há comandos para isso:

sudo a2ensite meusite.conf     # ativa um site
sudo a2dissite meusite.conf    # desativa um site
sudo a2enconf seguranca        # ativa uma config

Include

O arquivo principal junta os outros com Include e IncludeOptional:

# Carrega todos os arquivos .conf de uma pasta
IncludeOptional sites-enabled/*.conf
IncludeOptional conf-enabled/*.conf

Testar antes de recarregar

Sempre valide a sintaxe antes de aplicar:

sudo apache2ctl configtest
sudo systemctl reload apache2