Multisite Drupal Setup - Basisinstallation
Wenn man als Webhoster mehrere Drupal Domains auf einem Server betreibt, dann ist es sinnvoll, wenn man die Domains als Multisite Setup einrichtet. Wenn man ein Programm zur Verwaltung der einzelnen Domains einsetzt verliert man durch ein einheitliches Setup nicht die Übersicht und bleibt auch bei Sicherheitsupdates schnell auf dem aktuellen Stand.
Voraussetzungen
Ich gehe in diesem Artikel von einem Rootserver mit Debian Etch aus, der mit ISPConfig als Hostingsoftware installiert worden ist. D.h. das System ist so konfiguriert, dass das Webroot unter /var/www zu finden ist und dort für jede neue Domain ein Unterverzeichnis web1, web2, web3, usw. erstellt wird. Zudem werden Symlinks mit dem Domainnamen auf die internen Namen gesetzt. Das Verzeichnis könnte dann also so aussehen:
root@webserver:/var/www# ls -l
drwxr-xr-x web1
drwxrwxrwx web2
drwxr-xr-x web3
lrwxrwxrwx www.domain.de -> /var/www/web3
lrwxrwxrwx www.domain2.de -> /var/www/web2
lrwxrwxrwx www.domain1.de -> /var/www/web1
Diese Struktur wird durch ISPConfig angelegt und auch für neu eingetragene Domains übernommen. Subdomains erhalten ebenfalls einen neuen webX-Ordner und einen Symlink.
Multisite-Basis
Um bei der Multisite-Installation einen Stammordner anzulegen, ist es ratsam eine neue Subdomain, z.B. drupal5.domain.de anzulegen. Der Name der Subdomain ist dabei relativ egal, ich finde es aber ganz praktisch für jedes Release von drupal eine Subdomain anzulegen. So lassen sich Drupal Websites im Multisite Setup für verschiedene Release verwalten.
Nachdem über die ISP Software seiner Wahl, z.B. ISPConfig die beiden Drupal Stammordner angelegt worden, sieht die Struktur so aus (ohne Berechtigungen)
root@webserver:/var/www# ls -l
web1
web2
web3
web4
web5
www.domain.de -> /var/www/web3
www.domain2.de -> /var/www/web2
www.domain1.de -> /var/www/web1
drupal5.domain.de -> /var/www/web4
drupal6.domain.de -> /var/www/web5
Das folgende Prinzip klappt sowohl für Drupal 6 als auch für Drupal 5, ich beschreibe daher nur eine Version, in diesem Fall Drupal 5. Der Stammordner web4 ist nun also der Ordner, der vom Webserver ausgeliefert wird, wenn die Domain drupal5.domain.de aufgerufen wird. Der Inhalt des Ordners sieht bei einer ISPConfig Installation so aus:
root@webserver:/var/www/drupal5.domain.de# ls -la
.
..
backup
cgi-bin
.htpasswd
log
phptmp
scripts
ssl
user
web
Dabei ist ausschliesslich das Verzeichnis web interessant, da es die Drupal Installation bereitstellt. Nun ist es Zeit, Drupal in dem Verzeichnis web zu installieren.
Installation von Drupal
Bevor wir mit der Installation von Drupal beginnen, wird das Verzeichnis /var/www/drupal.domain.de/web/sites/default/settings.php gesichert, da die settings.php darin momentan noch eine Form hat, mit der man ohne später darin etwas editieren zu müssen eine Seite einfach hinzufügen kann.
# cd /var/www/drupal5.domain.de/web/sites
# ls -la
all
default
# cp -r default vorlage.nodomain
# ls -la
all
default
vorlage.nodomain
Es existiert nun also ein zusätzlicher Ordner vorlage.nodomain, auf dessen Basis wir später die weiteren Drupal Sites anlegen werden. Drupal wird nun im Ordner /var/www/drupal5.domain.de/web wie üblich installiert. Es wird ein User erstellt und für diesen ein Passwort vergeben. Die Basisinstallation ist damit abgeschlossen.



