Drupal multisite – symlinking, a key step

Setting up a multisite system is very easy with Drupal and is well documented both in the settings.php file and in the multi-site section of the handbook on Drupal.org. However there is one step that is usually left out of the instructions or mentioned only in passing, and it requires SSH access. You must create a symlink from the folders your multi-sites will be accessed at to the actual folder that the Drupal core files reside in.

So if you will have several sites like:

http://yoursite.com/site1
(the core files are located here)
and you want a second and third site to be accessed at

http://yoursite.com/site2
and
http://yoursite.com/site3

then you must create symlinks from site2 and site3 that point to site1.

Creating a symlink requires SSH access. It is not the same as a redirect, which can be created by modifying the .htaccess file. If you are on Hostgator or a similar shared hosting service, you can either have the support team create your symlinks, or you may be able to ask them to grant you SSH access.

A good guide to all the possible configurations and pitfalls of multisite setup is located here
Drupal Multisite Configurations and Hosts

On Windows you can get symlink-like functionality from junction links. Junction Linking Software is available from:

http://elsdoerfer.name
or
rekenwonder.com