I have just (fairly) successfully installed a Drupal multisite on my host (A2Hosting). The three sites access the core code base and their individual databases brilliantly. One HUGE problem. After I uploaded my standard set of contrib modules and themes to the sites/all/modules and sites/all/themes (respectively), none of the sites recognize them. The admin/modules only shows the core modules on all three of the sites.
To install the multi-site, I did the following:
- Used Fantastico to install the initial Drupal installation (site1) at the primary site's root
- Created new databases for site2 and site3
- Exported the contents of site1_db and imported them into site2_db and site3_db (mind you, site1 is a clean install with no information entered, not even the site name)
- Created new directories for site2 and site3 in sites/ folder (sites/site2.com and sites/site3.org)
- Copied the settings.php file into each of the sites/ folders
- Updated the settings.php files to reference the appropriate database and root url for each site
- Park the domains for each site pointing at the root for site1 using CPanel
- Update each site's site information with the site name, etc.
- I updated the core code base from 6.15 to 6.19
- Upload my standard set of contrib modules and themes to the sites/all/modules and sites/all/themes (respectively)
At this point, I have a successful multi-site install... everything points to the right place and each site updates and displays properly
At this point, when I go into any of the sites' modules screen, only core modules are listed.
I posted in the forums and it was suggested I check the folder permissions. They were set to the proper 755. I set them to 775 to see if this would help to no avail. I am now setting the permissions back to the original for security.
My excitement over getting multi-site working is quickly waning in the light of the fact it isn't working without being able to use contrib modules and themes. Need help. What would cause this? How do I fix it?
I have three production sites down due to this issue... need help ASAP
Thanks

Comments
did you run update.php?
Everything you detail sounds good to me. I've never had this problem on my multisite install but one thing I noticed you left out (maybe you just didn't write it down) was - did you run update.php for each site in your multisite install? For me, with my 50+ sites, I have to run it 50 times! (that's where drush can really save me some time).
Not sure about "Park the domains"
Everything sounds about right. I think you may be working a little too hard by exporting site1_db and importing it into site2_db and site3_db. The installation of site2.com and site3.org will create database tables for those sites' databases, which should be created before installing Drupal.
However, this is probably not why the contributed modules are not showing up in sites2.com and sites3.org.
I'm not sure what "Park the domains" means, so I guess that "Park the domains" is not sym-linking site2.com and site3.org to sites1.com/sites/sites2.com/ and sites1.com/sites/sites3.org/, respectively.
This is how I do my multi-site set up. These instructions are rinse-and-repeat for site3.org.
site1.com -- install as normal
cd sites1.com/sites
mkdir sites2.com
cd sites2.com
mkdir modules
mkdir themes
mkdir libraries
place a copy of default.settings.php in this location (sites1.com/sites/sites2.com)
cp default.settings.php settings.php
cd /home (i.e. the container for sites1.com, as well as sites2.com. In other words:
ls
sites1.com
sites2.com
pwd
/home
rm -rf sites2.com (Yes, that's right, remove it.)
ln -s /home/sites1.com/ /home/sites2.com
Point your web browser to:
www.sites2.com
Install sites2 as normal, through the web interface.
I hope this helps.
If none of the sites can see
If none of the sites can see those contributed modules/themes, but all can see the core modules, then it seems like it MUST be a directory/path issue. Unless you've messed with core modules, it will be looking for sites/all/modules and sites/all/themes directory. It sounds like it HAS to be a permissions or .htaccess. It's very odd that even the primary site can't see those modules. Also, in addition to the doing the update.php, did you also flush all the caches?
I just did a multisite install with fantastico and cpanel and went fine exept for a safemode error that I had to patch. I'm assuming you did not get any errors?
.htaccess
As noted above, I tried file permissions. I'll check the .htaccess. Any hints as to what I should be looking for?
The install itself went flawlessly
thanks
Jeff
Jeff Cicolani
@jcicolani
http://www.cicolanistudios.com
Check for any rewrite rules
Check for any rewrite rules that might be redirecting you to the wrong place. If you have an .htaccess in any of your folders, you might want to post any rewrite rules here - I'm no expert in rewrite, but someone may pick something up.
Another thing to check is the $base_url in settings.php - another possible redirection issue. Are you checking the url in the address to make sure you are indeed in the place you think you are?
Joyce
site1 sees only the core modules. Hmm . . .
I would start by getting site1 to recognize contributed modules and themes. Also, if site2 and site3 are new sites, I'd suggest deleting them for the time being.
Multi-site install is definitely worth it. Good luck and keep us posted.
May Have Found the Fix
So, out of desperation if nothing else, I deleted the sites/all/modules and sites/all/themes directories, created them from scratch using CPanel's file manager, and uploaded one module to test. This module was detected by the sites. So, now I'm uploading all of the modules to see if this works any better.
For some reason Drupal would not recognize the sites/all/modules and sites/all/themes directories when they were uploaded via FTP (Filezilla). It looks like this may be resolved.
Thanks all for your help.
Jeff
Jeff Cicolani
@jcicolani
http://www.cicolanistudios.com
Well, that's good
Maybe it is(was) a directory issue, such as CPanel is putting the module some other place and reporting to you that it's in sites/all/modules along with many backend steps to satisfy Drupal. I don't know. You are being inconvenienced by not being able to use an FTP client.
Cheers
.htaccess and FTP
I find that the hidden .htaccess does not get transferred by default in many FTP programs. Using CPanel is much faster anyway.
Also, files beginning with . are invisible on the Macintosh
That is a default setting for Mac OS.
However, Drupal includes an .htaccess file in the root directory only. That .htaccess file makes no reference, nor should it, to sites/all/modules /folders or /libraries.
If anything, I'd like to know what permissions CPanel is applying to uploaded folders/files, and, perhaps, where it's putting those folders/files.
I did a little experiment,
I did a little experiment, since I use Filezilla and my host has cpanel. I created a temporary directory and uploaded it via Filezilla to my home directory on my host. I then created a new directory in the home directory using cpanel. In both cases, the permissions were set to 755. My host allows ssh, bless its heart, and so I ssh'd in to see if there was anything funky I could see on that end. Nope, same group, same owner, same permissions.
This issue will probably go down in history as one of those little unsolved mysteries.
Freaky Anomaly
That's why I was kind of thrown. Unfortunately, I don't necessarily have the time (or Unix/Linux knowledge) to track this thing down. I've pretty much put it into the something-that-needs-to-be-done-a-certain-way category. It may have been just some weird hiccup that may or may not be reproducible. I mean, it's recognized uploaded directories in the past. The only difference is the parked domains, and that still doesn't explain site1, being the primary install, not recognizing it. I guess I'll find out when I go to install another module ;)
Thanks, again, for all y'all's help.
Jeff
Jeff Cicolani
@jcicolani
http://www.cicolanistudios.com
755 is good
I assume the x's (execute permissions) are also correct. Such as:
cd example.com/sites/all
ls -l
drwxr-xr-x libraries
drwxr-xr-x modules
drwxr-xr-x themes
Also a review of permissions on a typical multisite folder:
cd example.com/sites/site1.com
ls -l
-rw-r--r-- default.settings.php
drwxrwxr-x files
drwxr-xr-x libraries
drwxr-xr-x modules
-r--r--r-- settings.php
drwxr-xr-x themes
Strictly speaking, it is not necessary to keep default.settings.php in example.com/sites/site1.com
I'm glad to hear CPanel is doing what it's supposed to.