Niekoľko drobností, možno bude na vine niečo z toho, aj keď je to málo pravdepodobné:
Sú virtualhosty povolené v konfigurácii apache? (Include sites-enabled/ v apache2.conf)
Konfiguráky k jednotlivým subdoménam by sa mali vytvárať v sites-available a v sites-enabled by mal byť len symlink (dá sa automaticky vytvoriť cez a2ensite). Na funkčnosť by to vplyv mať nemalo, ale takto je to odporúčané.
Ja mám v konfiguráku toto:
<VirtualHost *:80>
ServerName xyz.dom.tld
DocumentRoot /var/www/sub/xyz
</VirtualHost>
a funguje to tak.
Bol apache2 reštartovaný po zmene konfiguráku?