I have a windows 2008 server at home (on a vmware server) along with other virtual machines, I want to open port 80 in my firewall, but I want to redirect the request to the correct vm. for example if the request is http://myserver/SVN I want it to go to my svn vm, if it's for http://myserver/Blog I want to go to another vm. what's the best approach?
And How hard is it to have https redirects as well?
You could use a reverse proxy. If you're using apache, this is what a basic reverse proxy setup would look like for http://myservers. This let you map directories to backend or even remote servers.
ProxyRequests Off
ProxyPass /svn http://svnvm
ProxyPassReverse /svn http://svnvm
ProxyPass /blog http://blogvm
ProxyPassReverse /blog http://blogvm
Edit: fixed formatting