You probably need a better understanding of the way that various "sites" are accessed. You are essentially correct in what you said, but I suspect you are still a bit lost.
Assuming you are running Apache (which seems safe), when you type the URL:
http://<your-domain-or-IP-address>/
Apache will return the index page for the default server. This will be pointed at whatever directory you have configured Apache to use. If you use the URL:
http://<your-domain-or-IP-address>/<some-word>
Apache will look in the filesystem for a subdirectory <some-word> and return the index page for that directory. The exact identity of that index page (e.g.: index.html, index.php, binky.love) is also a configuration option.
This much you seem to understand properly, at least in practice.
The next idea, which you haven't yet gotten to, is virtual servers. A virtual server can be reached by either a unique name or a unique IP address. In your case, the servers will be names which all resolve to the same IP address. So, there is NO essential difference, EXCEPT that instead of requiring a <some-word>, the hostname will provide a way to address the correct directory. It can even be in the same location, though that's probably not ideal.
Given all this, here is my suggestion: Place the various sites in a hierarchy that
isn't a child of your default site. I use:
/usr/local/www/sites/<site-name>
Then, use a symlink from your default site (or better, something like
http://beta.yourdomain.com/<site-name>) You'll need to be sure to have the follow symlinks option on. When the site goes live, you'll simply need to delete the add the virtual server. You could delete the symlink at that point, if you want--but it wont matter, really.
Hope this addresses your concerns.