I have a webserver on IIS7. It hosts multiple websites via host header redirects. I want to install one installation of some blog engine, such that I can host one or more blogs per domain. For example, www.foo.com/blog1, www.foo.com/blog2, www.bar.com/blog1, blog.foo.com, etc.
How do I achieve this?
You are looking for what used to be called WordPress MU, and it now WordPress MultiSite which is now just a part of the normal WordPress isntall.. There is a help doc available for setting up a multi-site system.
Movable Type might also be an option. It also has the advantage on generating static pages, so the load on the server will be generally lighter, and it's very easy to scale out.