Kae Verens has a few tips to help simplify your life with your current content management system by using one code base to run multiple sites.
I haven't studied how other engines do it, but here's how I do it. First off, some benefits to sharing the CMS across separate sites: reduced resource usage, easier upgrades, easier bug-fixing. Convinced yet? Of course you are. Here's how you do it.
There's four steps to his process:
- Separate out the site-specific files from one another
- Serve all site-specific files out through a "proxy" script that can intelligently grab the needed ones based on the site
- Override the default configuration at request time (forcing it to use that "proxy" script)
- Create that proxy file that the web server can funnel the requests through (his example is included).