papaya CMS erfordert bestimmte Einstellungen in Apache, PHP und ggf. auch MySQL, um einwandfrei laufen zu können. So muss das Rewrite-Modul in Apache aktiviert sein. PHP erfordert neben den Erweiterungen für Ihren Datenbankserver und XML noch XSLT und GD2. Anstelle von GD2 können Sie auch andere Grafikprozessoren wie ImageMagick oder Netpbm benutzen. Alle diese vier genannten Erweiterungen werden standardmäßig mit PHP 5 ausgeliefert.
| Dieses Handbuch geht davon aus, dass Sie bereits über einen laufenden Apacheserver mit PHP und MySQL verfügen. Nähere Angaben zur Installation und zur Konfiguration eines solchen Serververbundes können Sie den jeweiligen Dokumentationen entnehmen, die Sie unter den folgenden URLs aufrufen können: |
Die Datenbank sollte mit UTF-8-Zeichensatzkodierung angelegt werden. Sie sollten auch eine entsprechende UTF-8-Kollation auswählen, damit die alphabetischen Inhalte korrekt sortiert werden.
Folgende Einstellungen müssen im Apache vorgenommen werden:
- Aktivieren Sie das Modul
rewrite_module. - papaya CMS liefert eine eigene
.htaccess-Datei mit, die in das DocumentRoot-Verzeichnis abgelegt werden soll. Sie müssen daher dieAllowOverride-Direktive aufAllsetzen, damit der Apache-Webserver die.htaccess-Dateien interpretiert. - Passen Sie die
.htaccess-Datei an, falls papaya CMS in ein Unterverzeichnis installiert wird.
mod_rewrite aktivieren
papaya CMS benötigt das Modul rewrite_module. Dieses
Modul ist in der Konfigurationsdatei jedoch standardmäßig
auskommentiert. Sie müssen also die Raute vor der entsprechenden
LoadModule-Direktive entfernen und den Server neu starten.
Die untere Zeile aus der Konfigurationsdatei
httpd.conf zeigt die entsprechende Zeile:
.htaccess-Dateien für DocumentRoot freigeben
Apache kann eine Reihe von Verzeichnissen für die Webfreigabe
verwalten. Sie können ein Verzeichnis als DocumentRoot festlegen und
weitere Verzeichnisse für serverseitige Scripte wie Perl oder PHP
angeben. Über Directory-Bereiche können Sie für jedes dieser
Verzeichnisse bestimmte Einstellungen vornehmen. Sie können auf diese
Weise bestimmen, ob die .htaccess-Datei in diesem
Verzeichnis ausgewertet werden soll oder nicht. Diese Art der Freigabe
wird durch die AllowOverride-Direktive festgelegt.
Standardmäßig ist die AllowOverride-Direktive auf den
Wert None eingestellt. Dadurch ignoriert Apache
.htaccess-Dateien. In der unteren Abbildung wurde
die Standardeinstellung auskommentiert und durch „AllowOverride All“
ersetzt:
Beispiel 2.2. Die AllowOverride-Direktive verändern
# Each directory to which Apache has access can be configured
# with respect to which services and features are allowed
# and/or disabled in that directory (and its subdirectories).
<Directory "/pfad/zum/DocumentRoot">
Options FollowSymLinks
# AllowOverride None
AllowOverride All
</Directory>Diese Einstellung gewährleistet die Auswertung der .htaccess-Datei, die mit papaya CMS mitgeliefert wird.
VirtualDocumentRoot
Als Alternative zur einfachen DocumentRoot-Konfiguration bietet
Apache auch VirtualHosts an. Mit diesen virtuellen Hosts können Sie
verschiedene Webprojekte unter anderen Domainnamen auf ein und dem
selben Server betreiben. Sie können für jeden virtuellen Host ein
eigenes DocumentRoot definieren. In jeder dieser
<VirtualHost>-Elemente können Sie
<Directory>-Elemente einfügen, die eigene
AllowOverride-Direktiven und Rewrite-Regeln
enthalten können.
Wenn Sie viele virtuelle Hosts anlegen möchten, die die selbe
Konfiguration aufweisen, können Sie anstelle der
DocumentRoot-Direktive auch
VirtualDocumentRoot benutzen. Die
VirtualDocumentRoot-Direktive bildet Verzeichnisnamen auf URLs ab. Dabei
legen Sie genau einen <VirtualHost>-Bereich an, der eine
VirtualDocumentRoot-Direktive enthält:
Beispiel 2.4. VirtualDocumentRoot definieren
<VirtualHost 192.168.1.80:80>
VirtualDocumentRoot /usr/local/apache/vhosts/%0
...Wenn das Verzeichnis
/usr/local/apache/vhosts/ mehrere
Unterverzeichnisse im Format
/www.virtuelledomaene.tld/ enthält, wird Apache
alle Dokumente für diese Domäne in diesem Verzeichnis suchen.
In einer solchen Konfiguration können Sie ebenfalls wie oben
beschrieben die RewriteRules aus der
.htaccess-Datei einfügen und brauchen die
AllowOverride-Direktive nicht auf „On“ zu stellen.

![[]](images/tip.png)