Iniciante Fundamentos
Virtual Hosts
Virtual Hosts permitem rodar vários sites em um único Apache. O servidor decide qual site responder olhando o domínio pedido (cabeçalho Host). Isso se chama virtual host baseado em nome.
Criar um virtual host
No Debian, crie um arquivo em sites-available:
<VirtualHost *:80>
ServerName loja.com
ServerAlias www.loja.com
DocumentRoot /var/www/loja
<Directory /var/www/loja>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
Vários sites
Cada site tem seu próprio bloco, mesmo na mesma porta:
<VirtualHost *:80>
ServerName blog.com
DocumentRoot /var/www/blog
</VirtualHost>
Ativar e testar
sudo a2ensite loja.conf
sudo a2ensite blog.conf
sudo apache2ctl configtest
sudo systemctl reload apache2
Testar localmente
Para testar sem DNS, adicione os domínios ao /etc/hosts:
127.0.0.1 loja.com
127.0.0.1 blog.com
O ServerName define o domínio principal; o ServerAlias adiciona nomes extras. Sem um Host correspondente, o Apache usa o primeiro virtual host como padrão.