I had a very mysterious problem.
I'm serving a few sites from one Drupal setup with multiple include files with site definitions. This works quite well. I set up a new site with a config file I called : .../drupal/includes/test.newsite.ca (notice I forgot the .php when I made my new config file) What happened next was that my www.existingsite.ca was served instead of test.newsite.ca when I visited test.newsite.ca. This is a bit confusing since I would have thought that Drupal would look for /includes/conf.php, then /includes/test.newsite.ca.php, then give up, but instead it kept looking until it found a good configuration file. (this may be a bug) Eventually I added the .php to the conf file and my newsite worked great.
Now on to the confusing bit....
On www.existingsite.ca the server cached version of the pages had all of its links pointing to test.newsite.ca. I had my boss complain about this to me and since I was logged in and not seeing server cached pages I didn't see the problem. Eventualy I figured out that the problem was in the cache, and I fixed it by turning the cache off and then back on. I could have flushed the cache with this SQL command:
DELETE FROM cache;
Hopefully my story can help somebody out in the future....