A tecnologia que você está procurando é hospedagem virtual baseada em nome . Normalmente, você teria DNS configurado para apontar os domínios para o IP do seu servidor. O Apache usa as informações no cabeçalho Host: para exibir as informações do vhost correto.
Listen 80
NameVirtualHost *:80
<VirtualHost *:80>
ServerName foo.example.com
Serveralias www.foo.example.com
DocumentRoot /path/to/foo.example.com/root
.
.
.
</VirtualHost>
<VirtualHost *:80>
ServerName bar.example.com
Serveralias www.bar.example.com
DocumentRoot /path/to/bar.example.com/root
.
.
.
</VirtualHost>