> I know localhost is my local host and that will be part of the URL
> for my test sites. I think I have to set up a virtual host for each
> TLD but what about the subdomains and subdirectories?
You are not forced to use "localhost" as the domain name. You can use anything.
Check [support.microsoft.com...] section "Adding Static Clients to the Hosts File".
Simply, edit the file "%SystemRoot%\System32\Drivers\Etc\Hosts", with the notepad, and add something like:
(you can replace "127.0.0.1", by your local network, or Internet IP address, if your Apache server is bound to these IP addresses...)
Now, in Apache, create virtual hosts, and use the "ServerName" directive, to specify which domain to use, for the current virtual host, like "subdomain1.your-domain.tld.test", and you will be able to use "http://subdomain1.your-domain.tld.test/", in your Web browser.
For directories, I don't understand what you need. Can't you simply put the blog in "htdocs/blog/", and the forum, in "htdocs/forum"? There is no Apache configuration needed for this (you might have to configure the blog/forum, to specify their URL path, "/blog", and "/forum", if they do not detect it automatically).
[edited by: Mathieu_Bonnet at 4:26 pm (utc) on Dec. 21, 2006]