Parece não haver nada de errado com suas definições do VirtualHost. Você se lembra de reiniciar o apache depois de atualizar o arquivo de configuração? Você não diz qual SO está usando, então é difícil progredir. Você deve dar uma olhada na saída de
/usr/sbin/apache2ctl -S
ou
/usr/sbin/httpd -S
mostrará os hosts virtuais que seu apache conhece e também indicará se você tem hospedagem virtual baseada em nome habilitada, por exemplo,
/usr/sbin/apache2ctl -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80 is a NameVirtualHost
default server test1.lan (/etc/apache2/sites-enabled/000-default:1)
port 80 namevhost test1.lan (/etc/apache2/sites-enabled/000-default:1)
port 80 namevhost centos1.lan (/etc/apache2/sites-enabled/000-default:94)
port 80 namevhost host1.test.lan (/etc/apache2/sites-enabled/subhosts:41)
port 80 namevhost host2.test.lan (/etc/apache2/sites-enabled/subhosts:49)
Syntax OK
Se você não tiver um *:80 is a NameVirtualHost
, precisará ativá-lo com um
NameVirtualHost *:80
diretiva antes de suas definições do VirtualHost.