OpenLiteSpeed logo OpenLiteSpeed-Benutzerhandbuch

Anwendungsserver-Kontext

Inhaltsverzeichnis

Anwendungsserver-Kontext

Anwendungsserver-Kontext

Beschreibung

Ein App-Server-Kontext bietet eine einfache Moeglichkeit, eine Ruby-Rack/Rails-, WSGI- oder Node.js-Anwendung zu konfigurieren. Um eine Anwendung ueber einen App-Server-Kontext hinzuzufuegen, muessen nur die URL eingebunden und das Stammverzeichnis der Anwendung angegeben werden. Es ist nicht erforderlich, eine externe Anwendung zu definieren, einen 404-Handler hinzuzufuegen, Rewrite-Regeln einzurichten usw.

URI

Beschreibung

Gibt die URI fuer diesen Kontext an.

Syntax

Die URI kann eine einfache URI sein (beginnend mit "/") oder eine Perl-kompatible regulaere Ausdrucks-URI (beginnend mit "exp:"). Wenn eine einfache URI mit "/" endet, umfasst dieser Kontext alle Unter-URIs darunter. Wenn der Kontext einem Verzeichnis im Dateisystem zugeordnet ist, muss ein abschliessendes "/" hinzugefuegt werden.

Siehe auch

Speicherort

Speicherort

Beschreibung

Gibt den entsprechenden Speicherort dieses Kontextes im Dateisystem an.

Standardwert: $DOC_ROOT + URI

Syntax

Kann ein absoluter Pfad oder ein Pfad relativ zu $SERVER_ROOT, $VH_ROOT oder $DOC_ROOT sein. $DOC_ROOT ist der standardmaessige relative Pfad und kann weggelassen werden.

Wenn URI ein regulaerer Ausdruck ist, kann die gefundene Teilzeichenfolge zur Bildung der "Root"-Zeichenfolge verwendet werden. Sie kann mit "$1" - "$9" referenziert werden. "$0" und "&" referenzieren die gesamte gefundene Zeichenfolge. Zusaetzlich kann durch Anhaengen von "?" plus Query-String ein Query-String gesetzt werden. Vorsicht: "&" muss im Query-String als "\&" escaped werden.

Beispiel

Eine einfache URI wie /examples/ mit Speicherort auf /home/john/web_examples ordnet die Anfrage "/examples/foo/bar.html" der Datei "/home/john/web_examples/foo/bar.html" zu.
Um Apache mod_userdir zu simulieren, setzen Sie URI auf exp: ^/~([A-Za-z0-9]+)(.*), setzen Sie Speicherort auf /home/$1/public_html$2. Mit diesen Einstellungen wird eine Anfrage fuer URI /~john/foo/bar.html der Datei /home/john/public_html/foo/bar.html zugeordnet.

Siehe auch

URI

Binaerpfad

Beschreibung

Der Speicherort der Anwendungsbinaerdatei des App Server.

Anwendungstyp

Beschreibung

Der Anwendungstyp fuer diesen Kontext. Rack/Rails, WSGI oder Node.js werden unterstuetzt.

Startdatei

Beschreibung

Der Speicherort der Datei, mit der die Anwendung gestartet wird, relativ zum Anwendungs-Root-Verzeichnis.

Standard-Startdateinamen sind 'config.ru' fuer Rack/Rails, 'wsgi.py' und 'passenger_wsgi.py' fuer WSGI sowie 'app.js' fuer NodeJS.

Syntax

Pfad relativ zum Anwendungs-Root-Verzeichnis

Laufzeitmodus

Beschreibung

Gibt an, in welchem Modus die Anwendung ausgeführt wird: "Development", "Production" oder "Staging". Der Standardwert ist "Production".

Syntax

Aus Dropdown-Liste auswählen

Max. Verbindungen

Beschreibung

Gibt die maximale Anzahl gleichzeitiger Verbindungen an, die zwischen dem Server und einer externen Anwendung hergestellt werden koennen. Diese Einstellung steuert, wie viele Anfragen eine externe Anwendung gleichzeitig verarbeiten kann; die tatsaechliche Grenze haengt jedoch auch von der externen Anwendung selbst ab. Ein hoeherer Wert hilft nicht, wenn die externe Anwendung nicht schnell genug ist oder nicht auf viele gleichzeitige Anfragen skalieren kann.

Syntax

Ganzzahl

Tipps

Performance Ein hoher Wert bedeutet nicht automatisch hoehere Leistung. Den Grenzwert so zu setzen, dass die externe Anwendung nicht ueberlastet wird, bietet die beste Leistung/den besten Durchsatz.

Umgebung

Beschreibung

Gibt zusaetzliche Umgebungsvariablen fuer die externe Anwendung an.

Syntax

Key=value. Mehrere Variablen koennen mit "ENTER" getrennt werden

Expires aktivieren

Beschreibung

Gibt an, ob fuer statische Dateien ein Expires-Header erzeugt werden soll. Wenn aktiviert, wird ein Expires-Header basierend auf Expires-Standard und Expires nach Typ erzeugt.

Dies kann auf Server-, Virtual-Host- und Kontextebene gesetzt werden. Einstellungen niedrigerer Ebenen ueberschreiben hoehere Ebenen, d. h. Kontexteinstellungen ueberschreiben Virtual-Host-Einstellungen und Virtual-Host-Einstellungen ueberschreiben Servereinstellungen.

Syntax

Aus Optionsfeldern auswählen

Expires-Standard

Beschreibung

Gibt Standardeinstellungen fuer die Erzeugung des Expires-Headers an. Diese Einstellung wird wirksam, wenn Expires aktivieren auf "Yes" gesetzt ist. Sie kann durch Expires nach Typ ueberschrieben werden. Setzen Sie diesen Standardwert nicht auf Server- oder Virtual-Host-Ebene, sofern es nicht noetig ist, da er Expires-Header fuer alle Seiten erzeugt. Meist sollte dies auf Kontextebene fuer bestimmte Verzeichnisse gesetzt werden, die sich nicht haeufig aendern. Gibt es keine Standardeinstellung, wird fuer nicht in Expires nach Typ angegebene Typen kein Expires-Header erzeugt.

Syntax

A|Mseconds
Die Datei laeuft nach Basiszeit (A|M) plus angegebenen Sekunden ab. Basiszeit "A" setzt den Wert auf die Zugriffszeit des Clients und "M" auf die letzte Aenderungszeit der Datei.

Expires nach Typ

Beschreibung

Gibt Expires-Header-Einstellungen fuer einzelne MIME-Typen an.

Syntax

Kommagetrennte Liste von "MIME-type=A|Mseconds". Die Datei laeuft nach Basiszeit (A|M) plus angegebenen Sekunden ab.

Basiszeit "A" setzt den Wert auf die Zugriffszeit des Clients und "M" auf die letzte Aenderungszeit der Datei. MIME-type akzeptiert den Platzhalter "*", zum Beispiel image/*.

Header-Operationen

Beschreibung

Gibt zusaetzliche Antwort-/Anfrage-Header an, die hinzugefuegt werden sollen. Mehrere Header-Direktiven koennen mit einer Direktive pro Zeile angegeben werden. "NONE" deaktiviert die Vererbung uebergeordneter Header. Wenn keine Direktive angegeben ist, wird 'Header' angenommen.

Syntax

[Header]|RequestHeader [condition] set|append|merge|add|unset header [value] [early|env=[!]variable]

Beispiel

set Cache-control no-cache
append Cache-control no-store
Header set My-header cust_header_val
RequestHeader set My-req-header cust_req_header_val

Tipps

Information Syntax und Verwendung entsprechen den Apache mod_headers-Direktiven fuer unterstuetzte Operationen.

Information Die Direktive 'Header' ist optional und kann beim Kopieren von Regeln ohne Problem entfernt oder beibehalten werden.

Indexdateien

Beschreibung

Gibt die Namen von Indexdateien an, die nacheinander gesucht werden, wenn eine URL einem Verzeichnis zugeordnet wird. Sie koennen dies auf Server-, Virtual-Host- und Kontextebene anpassen.

Syntax

Kommagetrennte Liste von Indexdateinamen.

Tipps

Performance Legen Sie nur die Indexdateien fest, die Sie benoetigen.

Automatischer Index

Beschreibung

Gibt an, ob ein Verzeichnisindex dynamisch erzeugt wird, wenn die in Indexdateien aufgeführten Indexdateien in einem Verzeichnis nicht verfügbar sind. Diese Option kann auf Virtual-Host- und Kontextebene angepasst werden und wird entlang des Verzeichnisbaums vererbt, bis sie ausdrücklich überschrieben wird. Sie können die erzeugte Indexseite anpassen. Lesen Sie dazu die Online-Wiki-How-tos.

Syntax

Aus Optionsfeldern auswählen

Tipps

Security Es wird empfohlen, den automatischen Index nach Möglichkeit zu deaktivieren, um die Offenlegung vertraulicher Daten zu verhindern.

Siehe auch

Indexdateien, URI für automatischen Index

Realm

Beschreibung

Gibt den Autorisierungs-Realm fuer diesen Kontext an. Wenn angegeben, muessen ein gueltiger Benutzername und ein Passwort angegeben werden, um auf diesen Kontext zuzugreifen. Autorisierungs-Realms werden im Abschnitt Virtueller Host - Sicherheit eingerichtet. Diese Einstellung verwendet Realm-Name jedes Realms.

Syntax

Aus Dropdown-Liste auswählen

Authentifizierungsname

Beschreibung

Gibt einen alternativen Namen fuer den Autorisierungs-Realm des aktuellen Kontextes an. Wenn nicht angegeben, wird der urspruengliche Realm-Name verwendet. Der Authentifizierungsname wird im Login-Popup des Browsers angezeigt.

Require (autorisierte Benutzer/Gruppen)

Beschreibung

Gibt an, welche Benutzer/Gruppen auf diesen Kontext zugreifen duerfen. Dadurch koennen Sie eine Benutzer-/Gruppendatenbank (angegeben in Realm) fuer mehrere Kontexte verwenden, aber nur bestimmte Benutzer/Gruppen daraus fuer diesen Kontext zulassen.

Syntax

Die Syntax ist mit der Apache-Require-Direktive kompatibel. Zum Beispiel:

  • user username [username ...]
    Nur aufgelistete Benutzer koennen auf diesen Kontext zugreifen.
  • group groupid [groupid ...]
    Nur Benutzer, die zu den aufgelisteten Gruppen gehoeren, koennen auf diesen Kontext zugreifen.
Wenn diese Einstellung nicht angegeben ist, duerfen alle gueltigen Benutzer auf diese Ressource zugreifen.

Zugriff erlaubt

Beschreibung

Gibt an, welche IPs oder Subnetze auf Ressourcen unter diesem Kontext zugreifen duerfen. Zusammen mit Zugriff verweigert und der Zugriffskontrolle auf Server-/Virtual-Host-Ebene wird die Zugaenglichkeit durch den kleinsten Bereich bestimmt, in den die IP-Adresse des Clients faellt.

Syntax

Kommagetrennte Liste von IPs/Subnetzen.

Beispiel

Subnetze koennen als 192.168.1.0/255.255.255.0, 192.168.1 oder 192.168.1.* geschrieben werden.

Zugriff verweigert

Beschreibung

Gibt an, welche IPs oder Subnetze NICHT auf Ressourcen unter diesem Kontext zugreifen duerfen. Zusammen mit Zugriff erlaubt und der Zugriffskontrolle auf Server-/Virtual-Host-Ebene wird die Zugaenglichkeit durch den kleinsten Bereich bestimmt, in den die IP-Adresse des Clients faellt.

Syntax

Kommagetrennte Liste von IPs/Subnetzen.

Beispiel

Subnetze koennen als 192.168.1.0/255.255.255.0, 192.168.1 oder 192.168.1.* geschrieben werden.

Authorizer

Beschreibung

Gibt eine externe Anwendung an, die autorisiert/nicht autorisiert-Entscheidungen erzeugen kann. Derzeit ist nur der FastCGI Authorizer verfuegbar. Weitere Details zur Rolle FastCGI Authorizer finden Sie unter https://fastcgi-archives.github.io/ .

Syntax

Aus Dropdown-Liste auswählen

Rewrite aktivieren

Beschreibung

Gibt an, ob LiteSpeeds URL-Rewrite-Engine aktiviert wird. Diese Option kann auf Virtual-Host- oder Kontextebene angepasst werden und wird entlang des Verzeichnisbaums vererbt, bis sie ausdrücklich überschrieben wird.

Syntax

Aus Optionsfeldern auswählen

Rewrite erben

Beschreibung

Gibt an, ob Rewrite-Regeln von uebergeordneten Kontexten geerbt werden sollen. Wenn Rewrite aktiviert und nicht geerbt ist, werden die in diesem Kontext definierten Rewrite-Basis und Rewrite-Regeln verwendet.

Syntax

Aus Optionsfeldern auswählen

Rewrite-Basis

Beschreibung

Gibt die Basis-URL fuer Rewrite-Regeln an.

Syntax

URL

Rewrite-Regeln

Beschreibung

Gibt eine Liste von Rewrite-Regeln auf Virtual-Host-Ebene an.

Fügen Sie hier KEINE Rewrite-Regeln auf Dokumentstammebene hinzu. Wenn Sie Rewrite-Regeln auf Dokumentstammebene aus .htaccess haben, sollten Sie stattdessen einen statischen Kontext mit uri "/" erstellen und die Rewrite-Regeln dort hinzufügen.

Eine Rewrite-Regel besteht aus einer Direktive RewriteRule und kann optional von mehreren Direktiven RewriteCond eingeleitet werden.

  • Jede Direktive sollte nur eine Zeile belegen.
  • RewriteCond und RewriteRule folgen der Rewrite-Direktivensyntax von Apache. Kopieren Sie Rewrite-Direktiven einfach aus Ihren Apache-Konfigurationsdateien und fügen Sie sie ein.
  • Es gibt kleinere Unterschiede zwischen der Implementierung von LiteSpeed und Apache mod_rewrite:
    • %\{LA-U:variable\} und %\{LA-F:variable\} werden von der LiteSpeed-Rewrite-Engine ignoriert
    • Zwei neue Servervariablen werden der LiteSpeed-Rewrite-Engine hinzugefügt: %\{CURRENT_URI\} steht für die aktuelle URI, die von der Rewrite-Engine verarbeitet wird, und %\{SCRIPT_NAME\} hat dieselbe Bedeutung wie die entsprechende CGI-Umgebungsvariable.
    • Die LiteSpeed-Rewrite-Engine stoppt die Verarbeitung von Rewrite-Regeln nach einer [L]-Markierung, um Schleifen zu vermeiden, während Apache mod_rewrite die Verarbeitung von Rewrite-Regeln nur für die aktuelle Iteration stoppt. Dieses Verhalten ähnelt dem der [END]-Markierung in Apache mod_rewrite.

Die Implementierung der LiteSpeed-Rewrite-Engine folgt den Spezifikationen der Apache-Rewrite-Engine. Weitere Details zu Rewrite-Regeln finden Sie in der Apache mod_rewrite-Dokumentation und im Apache-Leitfaden zur URL-Umschreibung .

Syntax

Zeichenkette

Standard-Charset hinzufuegen

Beschreibung

Gibt an, ob dem Antwort-Header "Content-Type" ein Zeichensatz-Tag hinzugefuegt werden soll, wenn der Content-Type entweder "text/html" oder "text/plain" ohne Parameter ist. Bei Off ist diese Funktion deaktiviert. Bei On wird entweder der durch Angepasster Standard-Charset angegebene Zeichensatz oder der Standard "iso-8859-1" hinzugefuegt.

Syntax

Aus Optionsfeldern auswählen

Angepasster Standard-Charset

Beschreibung

Gibt einen Zeichensatz an, der verwendet wird, wenn Standard-Charset hinzufuegen auf On steht. Dies ist optional. Standardwert ist iso-8859-1. Dieser Eintrag hat keine Wirkung, wenn Standard-Charset hinzufuegen auf Off steht.

Syntax

Name eines Zeichensatzes.

Beispiel

utf-8

GeoLocation-Suche aktivieren

Beschreibung

Gibt an, ob die IP-Geolocation-Suche aktiviert/deaktiviert werden soll. Kann auf Server-, Virtual-Host- oder Kontextebene gesetzt werden. IP Geolocation ist standardmaessig deaktiviert, wenn der Wert "Not Set" verwendet wird.

Syntax

Aus Optionsfeldern auswählen

Siehe auch

Client-IP im Header verwenden, DB-Dateipfad,