Sie können papaya CMS entweder mit einem Apache-Server oder Lighttp-Server betreiben. papaya CMS erfordert bestimmte Einstellungen in PHP und MySQL, um einwandfrei laufen zu können. PHP erfordert XML, XSLT und Erweiterungen für Ihren Datenbankserver, wie GD Library, ImageMagick, GraphicksMagick oder Netpbm. Die Erweiterungen werden standardmäßig mit PHP 5 ausgeliefert. Legen Sie die Datenbank mit UTF-8-Zeichensatzkodierung an und wählen Sie eine entsprechende UTF-8-Kollation, damit die Inhalte alphabetisch korrekt sortiert werden.
Weitere Informationen zur Installation und Konfiguration eines Apache-Servers mit PHP und MySQL finden Sie in den jeweiligen Dokumentationen im Internet.
Nehmen Sie folgende Einstellungen an Ihrem Apache-Server vor, damit papaya CMS installiert werden kann:
papaya CMS benötigt das Modul „mod_rewrite“, das in der Konfigurationsdatei des Apache-Servers standardmäßig auskommentiert ist.
Example 3.1. mod_rewrite aktivieren
„LoadModule rewrite_module modules/mod_rewrite.so“
httpd.conf
Ihres Apache-Servers in einem Texteditor, z.B. Notepad. Sie finden die Datei im Verzeichnis Ihrer Apache-Installation.LoadModule
.
Apache kann eine Reihe von Verzeichnissen für die Webfreigabe verwalten. Sie können ein Verzeichnis als DocumentRoot
festlegen und weitere Verzeichnisse für Skripte wie Perl oder PHP angeben. Über <Directory>
-Bereiche können Sie für jedes der Verzeichnisse Einstellungen vornehmen. Auf diese Weise können Sie bestimmen, ob die Datei .htaccess
in dem Verzeichnis ausgewertet werden soll. Die Freigabe wird durch die Direktive AllowOverride
festgelegt.
Example 3.2. .htaccess-Datei freigeben
# 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_zur_DocumentRoot"> Options FollowSymLinks AllowOverride All </Directory>
Sie erreichen eine etwas sicherere Konfiguration Ihres Apache-Servers, wenn Sie die Direktive AllowOverride
auf None
belassen. Dafür müssen Sie den Inhalt der Datei .htaccess
zwischen die Tags von <Directory/>
der Datei httpd.conf
einfügen. Die Konfiguration sieht wie folgt aus (aus Platzgründen ist im Beispiel nur ein Teil der Rewrite-Regeln dargestellt):
Example 3.3. AllowOverride in die Datei httpd.conf einfügen
<Directory "/Pfad_zur_DocumentRoot"> Options FollowSymLinks AllowOverride None RewriteEngine On #remove session id RewriteRule ^/?sid[a-z]*([a-zA-Z0-9,-]{32}|[a-zA-Z0-9,-]{40})(/.*) $2 [QSA] #admin pages RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f (…) </Directory>
httpd.conf
Ihres Apache-Servers in einem Texteditor, z.B. Notepad. Sie finden die Datei im Verzeichnis Ihrer Apache-Installation.AllowOverride
auf All
.
Um mehrere Webauftritte unter verschiedenen Domain-Namen auf einem Apache-Server zu betreiben, können Sie Ihren Apache-Server mit Virtual Hosting konfigurieren. Mit Virtual Hosting können Sie verschiedene Domains unter einer IP-Adresse betreiben. Wenn Sie mehrere Virtual Hosts mit der gleichen Konfiguration anlegen möchten, verwenden Sie VirtualDocumentRoot
anstelle von DocumentRoot
. VirtualDocumentRoot
bildet Verzeichnisnamen auf URLs ab.
httpd.conf
Ihres Apache-Servers. Sie finden die Datei im Verzeichnis Ihrer Apache-Installation.DocumentRoot
.<VirtualHost>
die <Directory>
-Elemente ein.AllowOveride
auf All
.Example 3.4. Virtual Hosts mit der gleichen Konfiguration erstellen
<VirtualHost 192.168.1.80:80> VirtualDocumentRoot /usr/local/apache/vhosts/%0 (…) </VirtualHost>
Wenn das Verzeichnis /usr/local/apache/vhosts/
mehrere Unterverzeichnisse im Format www.virtuelledomaene.tld/
enthält, sucht Apache alle Dokumente der Domain in diesem Verzeichnis.
httpd.conf
Ihres Apache-Servers. Sie finden die Datei im Verzeichnis Ihrer Apache-Installation.<VirtualHost>
-Bereich an, der die Direktive VitualDocumentRoot
enthält.Als Alternative zum Apache-Server können Sie papaya CMS auf einem Lighttpd-Server betreiben. Lighttpd-Server kennen die Datei “.htaccess“ nicht. Alle Optionen der Konfiguration werden in der Datei „lighttpd.conf“ gespeichert.
Nehmen Sie folgende Einstellungen an Ihrem Lighttpd-Server vor, damit papaya CMS installiert werden kann:
papaya CMS benötigt insbesondere die Module „mod_rewrite“ und „mod_fastgi“, die Sie ggf. in die Datei „lighttpd.conf“ einfügen müssen.
Example 3.5. Module aktivieren
server.modules = ( "mod_rewrite", "mod_redirect", "mod_alias", "mod_access", "mod_cml", "mod_trigger_b4_dl", "mod_auth", " "mod_status", "mod_setenv", "mod_fastcgi", "mod_proxy", "mod_simple_vhost", "mod_evhost", "mod_userdir", "mod_cgi", "mod_compress", "mod_ssi", "mod_usertrack", "mod_expire", "mod_secdownload", "mod_rrdtool", "mod_accesslog" )
Die Reihenfolge der Module ist vorgegeben und muss für den korrekten Betrieb von papaya CMS eingehalten werden.
lighttpd.conf
in einem Texteditor, z.B. Notepad. Sie finden die Datei im Verzeichnis Ihrer Lighttpd-Installation.server.modules
, wie unter Module aktivieren angegeben. Beachten Sie die vorgegebene Reihenfolge der Module.Example 3.6. PHP im Fastcgi-Modus aktivieren
#### fastcgi module ## read fastcgi.txt for more info ## for PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini fastcgi.server = ( ".php" => ("localhost" => ("socket" => "/tmp/php-fastcgi.socket", "bin-path" => "/usr/local/bin/php" ) ) )
lighttpd.conf
in einem Texteditor, z.B. Notepad. Sie finden die Datei im Verzeichnis Ihrer Lighttpd-Installation.fastcgi.server
, wie unter PHP im Fastcgi-Modus aktivieren angegeben.
papaya CMS benötigt für den korrekten Betrieb Rewrite-Regeln, die Sie in die Option url.rewrite-once
der Datei lighttpd.conf
eintragen.
Example 3.7. url.rewrite-once aktivieren
#### papaya-rewrites url.rewrite-once = ( "^/?(?:sid[a-z]*(?:[a-zA-Z0-9,-]{32}|[a-zA-Z0-9,-]{40})/)?papaya/module\_([a-z\_] )\.[a-z]{3,4}(?:\?(. ))?$" => "/papaya/module.php?p_module=$1"