See http://stackoverflow.com/questions/43539682/apachectl-t-d-dump-vhosts-not-showing-aliases server/vhost.c : dump_a_vhost() contains a section to nicely present information about NameVirtualHosts including ports, vhosts and aliases. It also includes a simple if (ic->names == NULL) section to output something basic, which doesn't include the extra information (so nothing about aliases), if there are no NameVirtualHosts. Since 2.4 NameVirtualHosts are depreciated, and so only the basic section of the function is called when seeking to dump VHOSTS. As an aside, in code where NameVirtualHosts are no longer allowed, is the code that dumps NameVirtualHosts surplus to requirements anyway? I think it worth noting that whatever the output is, it should be consistent, so it can be parsed by scripts. The simple output and the complex output, are quite different. I suggest the complex output be rewritten to handle the brave new world without NameVirtualHosts, otherwise a new method needs finding to get vhost aliases on the output. I've marked this as 2.4.7 as that's the version of apache I'm running, but I'm looking at the trunk codebase, so presumably this applies to everything post the depreciation of NameVirtualHosts (I assume >=2.4.0)
I didn't make clear that dump_a_vhost() is called for each host when apachectl -t -D DUMP_VHOSTS is called