wils@web ~ $ cat ~/ajuda/como-configurar-virtualhosts-no-apache-2-4-para-multiplos-sites-em-um-unico-servidor-guia-passo-a-passo.md

Servidores

Como configurar VirtualHosts no Apache 2.4 para múltiplos sites em um único servidor: Guia passo a passo

atualizado em 31/08/2026

Configurar VirtualHosts no Apache 2.4 permite que você hospede múltiplos sites em um único servidor, otimizando recursos e facilitando a gestão.

Pré-requisitos

  • Servidor Linux com Apache 2.4 instalado.
  • Acesso root ou permissões sudo.
  • Domínios configurados para apontar para o servidor.

Passo a Passo

1. Habilitar o Módulo de Reescrita

Antes de criar VirtualHosts, é necessário habilitar o módulo de reescrita do Apache:

sudo a2enmod rewrite

2. Criar Diretórios para os Sites

Crie diretórios para os sites que você deseja hospedar:

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

3. 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
sudo chmod -R 755 /var/www

4. Criar Arquivos de Configuração dos VirtualHosts

Crie arquivos de configuração para cada site:

sudo nano /etc/apache2/sites-available/site1.com.conf
<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName site1.com
    ServerAlias www.site1.com
    DocumentRoot /var/www/site1.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/site1.com-error.log
    CustomLog ${APACHE_LOG_DIR}/site1.com-access.log combined
</VirtualHost>
sudo nano /etc/apache2/sites-available/site2.com.conf
<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName site2.com
    ServerAlias www.site2.com
    DocumentRoot /var/www/site2.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/site2.com-error.log
    CustomLog ${APACHE_LOG_DIR}/site2.com-access.log combined
</VirtualHost>

5. Habilitar os VirtualHosts

Habilite os sites criados:

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

6. Reiniciar o Apache

Reinicie o servidor Apache para aplicar as mudanças:

sudo systemctl restart apache2

Conclusão

Agora você pode acessar seus sites através dos domínios configurados. Mantenha sempre os logs de erro e acesso sob controle para facilitar a resolução de problemas.

Dica: Considere utilizar SSL para garantir a segurança dos seus sites. Você pode usar o Let's Encrypt para obter certificados gratuitos.

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.