wils@web ~ $ cat ~/ajuda/como-configurar-virtualhosts-no-apache-2-4-para-multiplos-sites-na-mesma-maquina.md

Servidores

Como configurar VirtualHosts no Apache 2.4 para múltiplos sites na mesma máquina

atualizado em 20/08/2026

Introdução

Configurar VirtualHosts no Apache 2.4 permite hospedar múltiplos sites na mesma máquina, otimizando recursos e simplificando a gestão.

Passo a Passo

1. Instalação do Apache

Se o Apache ainda não estiver instalado, você pode instalá-lo usando o seguinte comando:

sudo apt update && sudo apt install apache2

2. Habilitar o Módulo de VirtualHost

Certifique-se de que o módulo mod_vhost_alias está habilitado:

sudo a2enmod vhost_alias

3. Criar Diretórios para os Sites

Crie diretórios para cada site que você deseja hospedar:

sudo mkdir -p /var/www/site1.com/public_html
sudo mkdir -p /var/www/site2.com/public_html

4. Definir Permissões

Defina as permissões adequadas para os diretórios:

sudo chown -R $USER:$USER /var/www/site1.com/public_html
sudo chown -R $USER:$USER /var/www/site2.com/public_html

5. Criar Arquivos de Configuração dos VirtualHosts

Crie um arquivo de configuração para cada site:

sudo nano /etc/apache2/sites-available/site1.com.conf

Adicione o seguinte conteúdo:

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName site1.com
    ServerAlias www.site1.com
    DocumentRoot /var/www/site1.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Repita para o segundo site:

sudo nano /etc/apache2/sites-available/site2.com.conf

Conteúdo:

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName site2.com
    ServerAlias www.site2.com
    DocumentRoot /var/www/site2.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

6. Habilitar os VirtualHosts

Ative os sites criados:

sudo a2ensite site1.com.conf
sudo a2ensite site2.com.conf

7. Reiniciar o Apache

Reinicie o Apache para aplicar as mudanças:

sudo systemctl restart apache2

Conclusão

Agora você pode acessar seus sites através dos domínios configurados. Uma dica importante é sempre verificar os logs de erro caso algo não funcione como esperado.

Precisa de ajuda com isso no seu servidor? A gente resolve pra você.

falar no WhatsApp

// deu erro ou não funcionou?

Achou algo errado neste manual?

Conta pra gente o que deu errado ou qual erro apareceu — a gente corrige. Se quiser retorno, deixe seu contato.