Ваш .htaccess не делает ничего полезного, так как Apache, вероятно, настроен с помощью DirectoryIndex index.php. Что ж, он перемещает domain.com/a в domain.com/index.php, но я сомневаюсь, что это то, что вы хотите.
Ваш виртуальный хост с подстановочными знаками работает, потому что в вашей конфигурации, вероятно, есть ServerAlias * .domain.com или один виртуальный хост и DNS указывают на адрес вашего сервера. (Когда у вас есть один виртуальный хост, он появляется для любого запроса, и первый из перечисленных виртуальных хостов является по умолчанию)
Вы должны создать новые VirtualHosts для статических доменов, оставив по умолчанию один, а по умолчанию:)
Отметьте эти учебные пособия , которые объясняют все это.