[eluser]steward[/eluser]
Thanks for posting that Phil.
An extended loader for CI multi-apps is essential.
If you are able to modify php.ini, consider the "include_path" setting as an alternative to symlinks.
I wrote a generic script that looks at the HTTP_HOST to see what the current site is, and then sets up a few global variables and functions, so any script knows where it is, eg:
site_path() '/home/mysite/path', '/home/myothersite/path', etc
site_home() 'mysite.com', 'myothersite.com', etc
site_domain() 'com', 'dev', etc
site_subdomain() 'travel', 'forums', etc
Since this script is on the include path, I can use it anywhere.
It starts by overriding a few config variables, so eg CI site_url() works as expected.
Then I took the opposite approach, putting the sites further down the folder tree:
/home/CodeIgnitor_1_7_1
/home/domains
/home/domains/mysite
/home/domains/myothersite
/home/app
/home/app/controllers/
/home/app/controllers/mysite
/home/app/controllers/myothersite
/home/app/views/
/home/app/views/mysite
/home/app/views/myothersite
In my case the sites are closely related, and share many views, models etc. They all share the same system and application folders.
I still long for a more "zend-like" approach to loading models, so I always have base functionality but can extend any give site/class as required.