Lighttpd konfigurieren

Als Alternative zum Apache-Webserver können Sie papaya CMS auch mit Lighttpd betreiben. Dazu sind folgende Einstellungen notwendig:

  • Aktivieren Sie alle notwendigen Module, insbesondere mod_rewrite und mod_fastcgi.

  • Aktivieren Sie PHP im Fastcgi-Modus.

  • Fügen Sie der Konfigurationsdatei die Rewrite-Direktiven für papaya CMS hinzu.

Im Gegensatz zu Apache kennt lighttpd keine .htaccess-Dateien. Alle Konfigurationsoptionen werden in einer zentralen Datei mit dem Namen gespeichert. Diese Datei hat den Namen lighttpd.conf.

Module aktivieren

Öffnen Sie die Datei lighttpd.conf und bearbeiten Sie die Option server.modules = (). Fügen Sie ggf. die notwendigen Einträge mod_rewrite und mod_fastcgi hinzu. Beachten Sie dabei die vorgegebene Reihenfolge der Module, wie sie in der unten dargestellten Datei abgebildet ist:

Beispiel 2.6. Module für lighttpd 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"
)

PHP im Fastcgi-Modus aktiveren

Um PHP im Fastcgi-Modus zu betreiben, müssen Sie die Option fastcgi.server wie folgt konfigurieren:

Beispiel 2.7. Option fastcgi.server einstellen

#### 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"
                    )
                   )
                 )

Rewrite-Direktiven in die Konfigurationsdatei einfügen

papaya CMS benötigt für den korrekten Betrieb unbedingt Rewrite-Regeln, die Sie in die Option url.rewrite-once eintragen müssen:

Beispiel 2.8. Rewrite-Regeln für papaya CMS

#### papaya-rewrites
url.rewrite-once = (
  # admin pages
  "^/?(?: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&$2",
  # pages
  "^/?(?:sid[a-z]*(?:[a-zA-Z0-9,-]{32}|[a-zA-Z0-9,-]{40})/)?[a-zA-Z0-9_-]+(?:(?:\.[0-9]+)?\.[0-9]+)(?:(?:\.[a-z]{2,5})?\.[a-z]+)(?:(?:\.[0-9]+)?.preview)?(\?.+)?$" => "/index.php$1",
  # index page
  "^/?(?:sid[a-z]*(?:[a-zA-Z0-9,-]{32}|[a-zA-Z0-9,-]{40})/)?index(?:(?:\.[a-z]{2,5})?\.[a-z]+)(?:(?:\.[0-9]+)?.preview)?(\?.+)?$" => "/index.php$1",
  # media files
  "^/?(?:sid[a-z]*(?:[a-zA-Z0-9,-]{32}|[a-zA-Z0-9,-]{40})/)?[a-zA-Z0-9_-]+\.(?:media|thumb|download|popup|image)(?:\.(preview))?(?:(?:\.(?:[a-zA-Z0-9_]+))?(?:\.[a-zA-Z0-9_]+))(\?.+)?$" => "/index.php$1",
  # sid only
  "^/?(?:sid[a-z]*(?:[a-zA-Z0-9,-]{32}|[a-zA-Z0-9,-]{40}))(/.*)(\?.+)?$" => "$1$2"
)

Zudem können Sie lighttpd mitteilen, dass papaya CMS das Handling für den HTTP-Fehlercode 404 übernimmt:

Beispiel 2.9. Error-Handling für 404-Fehler an papaya CMS delegieren

server.error-handler-404   = "/index.php"

Suche

Im Handbuch suchen nach:

Fehler gefunden?

Teilen Sie uns mit, wenn Sie Fehler gefunden haben. Auf diese Weise helfen Sie uns, die Qualität der Dokumentation zu verbessern: Redaktion