I think you still don’t believe me that names don’t matter to Virtualmin.
Virtualmin doesn’t care about names. A Virtual Server can be anything you want it to be, including a subdomain name of some other virtual server. Virtualmin does not care about names, and a sub-domain is just another name. It can even be a sub-sub-domain name, or a sub-sub-sub-domain and it can get its own user account to manage it.
Servers vs. Sub-servers is entirely a question of ownership and has nothing to do with names (subdomain names or otherwise):
If it is a Virtual Server, it is owned by a new user account.
If it is a Sub-server, it is owned by some existing user account.
If you have a registered domain name, and your Virtualmin server is authoritative for that domain name, you can put as many sub-domains on that same server as you want, and they can be Virtual Servers or Sub-Servers or any combination of the two (a sub-domain is a name, not an account type–you now see, perhaps, why the sub-domain account type was removed, by default…it made sub-domain mean two different things and confused the hell out of people).
Let me make this concrete with examples (I’m going to cover all possible cases here, so read all the way through, and if you’re still confused read it a couple more times…this is the good stuff):
doxfer.com is a domain that we own, and it is delegated to ns1.virtualmin.com and ns2.virtualmin.com (both servers that are under control of the Virtualmin instance running here at Virtualmin.com)
So, I create doxfer.com to host the Webmin and Usermin wikis. It’s owned by a new account named “doxfer”.
Now, say I want to work on an experimental version of Doxfer, that won’t effect the production site. I want a devel.doxfer.com domain. Because I’m the person working on both sites, and there’s nothing useful to be gained by making me login under a different account, I make it a sub-server of doxfer.com. This server (which happens to be named devel.doxfer.com) is owned and managed by the doxfer user account. With me so far? Sub-server devel.doxfer.com is owned by the parent server user account “doxfer”.
OK, now, as the administrator of doxfer.com, I send out a press release and accidentally mis-spell doxfer.com to be doxfir.com (I actually did this on a Virtualmin press release…truth is dumber than fiction). Argh! What to do? I know! I’ll register that domain, delegate it to ns1/ns2.virtualmin.com and create an Alias of doxfer.com! Awesome. So, I register doxfir.com, and setup an Alias Server of doxfer.com called doxfir.com. Disaster averted.
Now, say sometime down the road I develop some tools for TWiki, the wiki platform used for doxfer.com (with some modifications), and I want to distribute them under the name “doxfertools”. Maybe I even want a special website for it. doxfertools.org. I register the name, delegate the zone to ns1/ns2.virtualmin.com, and create a new server. What kind? Well, I’m administering this site, and I’m the only person poking at it. So, I want it owned by the same user that owns doxfer.com. So, again this is a Sub-Server. It’s owned by doxfer.com, and nobody cares what the domain name is. It’s about ownership. If I want doxfertools.org owned and managed by doxfer, I make it a Sub-Server.
Now, here’s where I’m (apparently) going to blow everyones mind. Let’s say I want to launch a Spanish language specific version of Doxfer called ex.doxfer.com. Now, continue to imagine with me that someone has volunteered to manage es.doxfer.com, and will be using a wholly independent installation of TWiki (so they can customize it to suit Spanish tastes). So, what should I do here? It’s a sub-domain, right? It’s gotta have some relationship to doxfer.com, right? Wrong. A sub-domain is just another name. Virtualmin doesn’t care. All it cares about is ownership. You want a new server named es.doxfer.com, and you want it owned by a user named “es”, so you create a new Virtual Server named es.doxfer.com. If you made it a Sub-Server it would be owned by user doxfer, and that’s not what we want, so we don’t do that.
Mind blown? Sub-domains are just names and Virtualmin does not care about names.
Help me out here, guys, what else can I say to make it clear that a Sub-Server is owned by a Virtual Server (no matter what the name of it is) and a Virtual Server gets a new account (no matter what the name of it is)? Names do not matter to Virtualmin.