Lade...
 

RezeptMultiTiki

Rezept für ein Multi Tiki

Anmerkung: Die Beschreibung gilt für die ))TikiWiki(( Version 1.8. Vermutlich funktioniert sie auch mit früheren Versionen, dies ist allerdings nicht getestet. Version 1.9 und höher verfolgt einen anderen Ansatz der es notwendig macht, db/tiki-db.php zu bearbeiten und einige neue Funktionen aus tii-install.php einzusetzen. Diese neuere Variante ist ansatzweise in MultiTiki19 beschrieben.


Einrichtung von eine Mehrfach Tikiwiki auf einem ))RedHat(( System
von George Geller http://tikiwiki.org/tiki-index.php?page=UserPagegeorge.geller


Einleitung

Allgemeine Anweisungen zur Installation eines Multi Tikis auf einem einzigen Server sind auch unter InstallationVirtuellesHosting zu finden. Außerdem existiert unter ))AkiraMultiTiki(( eine Beschreibung zur Installation mehrerer Tikis ohne virtuelle Hosts (bspw. Nutzung von Unterverzeichnissen).


Mit dieser Beschreibung soll ein möglicher Weg zur Installation mehrerer Tikis auf einem einzigen ))RedHat(( Linux Server aufgezeigt werden, allerdings werden root Rechte benötigt. Es wird vorausgesetzt, dass Apache, PHP und mySQL auf dem System installiert sind und funktionieren.
Sofern die richtigen ))RedHatPakete installiert sind und die Konfigurationsdateien nicht zu sehr verändert wurden, dann sollten diese Programme reibungslos funktionieren. Diese Anleitung wurde erfolgreich mitRedHat8,RedHat(( 9 und Yelllow Dog 3.0 getestet.

In diesem Beispiel wird die Installation dreier funktionierender Tikis auf einer Maschine beschrieben und es werden einige Hinweise innerhalb des Installationsprozesses gegeben. Es soll eher auf die Besonderheiten eingegangen werden, anstatt zu allgemein zu bleiben, eher konkret als abstrakt. Solltest du eine andere Umgebung auf deinem Server einsetzen, dann müssen die Anweisungen entsprechend angepasst werden.

Es wird beschrieben wie diese drei Tikis installaiert und konfiguriert werden:

  • public.wikiplanet.com
  • member.wikiplanet.com
  • staff.wikiplanet.com

mySQL Setup

Jeder Tiki Instanz benötigt eine eigene MySql Datenbank. Außerdem wird für jede ))MySql(( Datenbank ein separater Benutzer mit den Rechten zur Änderung der Datenbank benötigt. Auf die Bezeichnung der Datenbanken kommt es nicht an, allerdings wurde für diese Beschreibung das Prefix *tiki_* für die Datenbanken benutzt, so dass die Bezeichnung der drei Datenbanken sein wird:

  • tiki_public
  • tiki_member
  • tiki_staff

Es wurde ein einziger ))MySql(( Benutzer eingerichtet, der auf alle drei Datenbanken Zugriff hat.

Diese Befehle wurden -mit Root Rechten- zur Installation eingesetzt:

Copy to clipboard
# mysqladmin -uroot -p create tiki_public # mysqladmin -uroot -p create tiki_member # mysqladmin -uroot -p create tiki_staff


Dann wurde mit ))MySql(( der 'tiki' Benutzer mit den notwendigen Rechten eingerichtet:

Copy to clipboard
# mysql -uroot -p mysql> USE mysql; mysql> GRANT USAGE ON * . * TO "tiki"@"localhost" IDENTIFIED BY "password"; mysql> GRANT ALL PRIVILEGES ON `tiki_public` . * TO "tiki"@"localhost"; mysql> REVOKE GRANT OPTION ON `tiki_public` . * FROM "tiki"@"localhost"; mysql> GRANT ALL PRIVILEGES ON `tiki_member` . * TO "tiki"@"localhost"; mysql> REVOKE GRANT OPTION ON `tiki_member` . * FROM "tiki"@"localhost"; mysql> GRANT ALL PRIVILEGES ON `tiki_staff` . * TO "tiki"@"localhost"; mysql> REVOKE GRANT OPTION ON `tiki_staff` . * FROM "tiki"@"localhost"; mysql> exit

Apache Konfiguration

Als nächstes wird die Apache Web Server konfiguration /etc/httpd/conf/httpd.conf bearbeitet, damit apache weiss an welcher Stelle die verschiedenen Tikis zu finden sind.

DocumentRoot (optional)

Die ))DocumentRoot(( wurde -aus Gründen der Faulhait biggrin - auf /www verändert. Das Standardverzeichnis ist /var/www/html.
Diese zwei Zeilen in httpd.conf sind hierfür zu ändern:
))DocumentRoot(( "/www"
und 25 Zeile tiefer:
<Directory "/www">
Diese können verändert werden oder sie bleiben unangetastet, dann muss dies entprechend in der folgenden Beschreibung berücksichtigt werden.

Virtuelle Hosts

Weiter unten ist eine Zeile ))NameVirtualHostzu finden, diese ist aufNameVirtualHost(( *:80 zu ändern. Außerdem wird am Ende der Datei httpd.conf diese Zeile hinzugefügt:

Copy to clipboard
Include conf.d/*.vh


Erstelle eine .vh Datei in /etc/httpd/conf.d/ für jede der virtuellen Hosts.

/etc/httpd/conf.d/public.wikiplanet.com.vh beinhaltet:

Copy to clipboard
<VirtualHost *:80> ServerAdmin webmaster@wikiplanet.com DocumentRoot /www/public.wikiplanet.com ServerName public.wikiplanet.com ErrorLog logs/public.wikiplanet.com-error_log CustomLog logs/public.wikiplanet.com-access_log common </VirtualHost>


/etc/httpd/conf.d/member.wikiplanet.com.vh beinhaltet:

Copy to clipboard
<VirtualHost *:80> ServerAdmin webmaster@wikiplanet.com DocumentRoot /www/member.wikiplanet.com ServerName member.wikiplanet.com ErrorLog logs/member.wikiplanet.com-error_log CustomLog logs/member.wikiplanet.com-access_log common </VirtualHost>


/etc/httpd/conf.d/staff.wikiplanet.com.vh beinhaltet:

Copy to clipboard
<VirtualHost *:80> ServerAdmin webmaster@wikiplanet.com DocumentRoot /www/staff.wikiplanet.com ServerName staff.wikiplanet.com ErrorLog logs/staff.wikiplanet.com-error_log CustomLog logs/staff.wikiplanet.com-access_log common </VirtualHost>


Nun muss der Webserver neu gestartet werden.

Copy to clipboard
# apachectl graceful

Die Fehlermeldungen über die nicht vorhandenen Verzeichnisse können zu diesem Zeitpunkt ignoriert werden, da wird diese im nächsten Schritt erstellen werden.


Installation ))TikiWiki((

Installation der Distribution

Beschaffe eine aktuelle Distribution von ))TikiWiki(( auf sourceforge.net. Entpacke diese und erstelle die notwendigen Soft Links.
Dieser Beschreibung liegt die Version 1.8.RC2 zugrunde.

Copy to clipboard
# cd /www # tar -xvjf tikiwiki-1.8.RC2.tar.bz2 # ln -s tikiwiki-1.8.RC2 public.wikiplanet.com # ln -s tikiwiki-1.8.RC2 member.wikiplanet.com # ln -s tikiwiki-1.8.RC2 staff.wikiplanet.com

Hinzufügen des Codes zur Auswahl der Datenbank

In der Datei db/local.php müssen hierfür einige Änderungen vorgenommen werden.

Copy to clipboard
# cd /www/tikiwiki-1.8.RC2/db

Bearbeite local.php. Im Beispiel sieht es so aus:

Copy to clipboard
<?php $host_tiki="localhost"; $user_tiki="tiki"; $pass_tiki="secret"; $db_tiki = 'mysql'; $dbversion_tiki="1.8"; if ($_SERVER["HTTP_HOST"] == "public.wikiplanet.com") { $dbs_tiki = "tiki_public"; $tikidomain = "public.wikiplanet.com"; } elseif ($_SERVER["HTTP_HOST"] == "member.wikiplanet.com") { $dbs_tiki = "tiki_member"; $tikidomain = "member.wikiplanet.com"; } elseif ($_SERVER["HTTP_HOST"] == "staff.wikiplanet.com") { $dbs_tiki = "tiki_staff"; $tikidomain = "staff.wikiplanet.com"; } else { // default case, your choice is to block or open to a default domain } ?>

Einrichten der Dateien

Einrichtung der Dateien und Verzeichnisse für die Tikis:

Copy to clipboard
# cd /www/tikiwiki-1.8.RC2 # ./setup.sh apache apache 02755 public.wikiplanet.com member.wikiplanet.com staff.wikiplanet.com # chown apache:apache *.php .

Führe das Installation Skript aus

Als nächstes wird zur Installation der neuen Tikis mit einem Webbrowser das Installationsskript ausgeführt. Hierfür muss dns korrekt funktionieren oder die Datei /etc/hosts angepasst werden. In unserem Beispiel funktioniert dns, so dass wir mit unseren Webbrowser die Adresse http://public.wikiplanet.com/tiki-install.php aufrufen können und das Installationsskript ausführen.
Achtung:
Zu diesem Zeitpunkt darf tiki-install.php noch nicht entfernt (remove) werden!
Zuerst wird das Installationsskript noch für die beiden weiteren Tikis ausgeführt: member und staff. Erst bei der letzten Ausführung des Installationskriptes wird dieses am Ende entfernt.

Administration der ))TikiWikis((

Das war alles. Melde Dich als admin bei den Tikis an und richte diese nach eigenem Bedarf ein.


Anmerkung

Grenzen der Multi Tikis

Da unsere Tikis sich gemeinsam die gleichen Dateien teile, existieren in diesem Falle einige Einschränkungen.

Gleiche Style Sheets für alle Tikis

Administratoren und Benutzer mit gleichen Loginnamen in verschiedenen Tikis basieren auf den gleichen StyleSheets.

Ein Favicon für alle Tikis

Dem Internet Explorer von Microsoft kann nicht mitgeteilt werden an welcher Stelle ein favicon liegt, er benutzt immer das Favicon in der Document Root, sodass alle gehosteten Tikis das selbe Favicon anzeigen, außer der Web Server verändert den Request für favicon.ico. Siehe WikiShortcutIcon für die entsprechende Konfiguration.



Unter RezeptMultiTiki2 wird beschrieben wie ein neues Tiki zu dieser Installation hinzugefügt werden kann.

Jedermann kann diese Seite gerne ändern oder kommentieren. - George Geller http://tikiwiki.org/tiki-index.php?page=UserPagegeorge.geller

Externe Verweise
Originalseite

http://tikiwiki.org/tiki-index.php?page=RecipeMultiTiki

Wer arbeitet hier?

DereDior: http://de.tikiwiki.org/tiki-user_information.php?view_user=DereDior


Zu dieser Seite haben beigesteuert: DereDior und system .
Seite zuletzt geändert: am 26.09.04 14:37 von DereDior.