Die Direktive steuert, ob Anfragen akzeptiert oder
abgewiesen werden, bei denen nach der tatsächlichen
Datei (oder einer nicht existierenden Datei in einem existierenden
Verzeichnis) zusätzliche Pfadangaben folgen. Die angehängte
Pfadangabe kann Skripten in der Umgebungsvariable PATH_INFO
verfügbar gemacht werden.
Nehmen wir beispielsweise an, dass /test/
auf ein
Verzeichnis zeigt, welches lediglich eine Datei here.html
enthält. Dann wird bei Anfragen nach
/test/here.html/more
und
/test/nothere.html/more
beides Mal /more
als PATH_INFO
ermittelt.
Die drei möglichen Argumente für die Direktive
Off
/test/here.html/more
im obigen Beispiel, den Fehler
404 NOT FOUND On
/test/here.html/more
wird akzeptiert,
wenn /test/here.html
auf eine gültige Datei
zeigt.Default
PATH_INFO
-Zugriffe
standardmäßig zurück. Handler, die Skripte bedienen,
wie z.B. cgi-script und
isapi-isa, sind im Allgemeinen darauf
voreingestellt, PATH_INFO
zu akzeptieren.Das eigentliche Ziel von AcceptPathInfo
ist es, Ihnen
das Überschreiben der Voreinstellung der Handler bezüglich
der Akzeptanz oder Ablehnung von PATH_INFO
zu erlauben.
Eine solche Änderung ist zum Beispiel notwendig, wenn Sie einen
Filter wie INCLUDES verwenden, um Inhalte
abhängig von PATH_INFO
zu generieren. Der
Core-Handler würde die Anfrage normalerweise abweisen. Verwenden
Sie die folgende Konfiguration, um dennoch solch ein Skript zu
ermöglichen.
Aus dieser Namensliste sucht der Server während der Bearbeitung einer Anfrage in jedem Verzeichnis nach der ersten existierenden Datei, sofern im betreffenden Verzeichnis dezentrale Konfigurationsdateien erlaubt sind. Beispiel:
Vor der Rücksendung des Dokuments
/usr/local/web/index.html
wird der Server
/.acl
, /usr/.acl
,
/usr/local/.acl
und /usr/local/web/.acl
einlesen, solange diese nicht mit
deaktiviert wurden.
text/plain
oder text/html
hinzugefügt wird
Die Direktive gibt einen Standardwert für den Charset-Paramter des
Medientyps (den Namen einer Zeichencodierung) an, der einer Antwort
genau dann hinzugefügt wird, wenn der Content-Type der Antwort entweder
text/plain
oder text/html
ist. Dies sollte jedes
mittels META
-Element im Datenteil der Antwort angegebene
Charset überschreiben. Das genaue Verhalten hängt jedoch oft von
der Client-Konfiguration des Benutzers ab. Die Einstellung
AddDefaultCharset Off
deaktiviert diese Funktionalität.
AddDefaultCharset On
aktiviert die Standard-Zeichenkodierung
iso-8859-1
. Jeder andere Wert wird als die zu verwendende
Zeichenkodierung aufgefaßt, die eines der bei IANA registrierten
Charset-Werte zur Verwendung in MIME-Medientypen sein sollte. Zum
Beispiel:
Die Direktive aktiviert für eine Anfrage abhängig vom MIME-Type der Antwort einen bestimmten Ausgabe-Filter.
Das folgende Beispiel verwendet den Filter DEFLATE
,
der von text/html
oder text/plain
gekennzeichnet ist, (gleichgültig, ob statisch oder dynamisch)
bevor sie an den Client gesendet wird.
Wenn Sie den Inhalt von mehr als einem Filter verarbeiten lassen
wollen, dann müssen deren Namen durch Semikolons voneinander
getrennt werden. Es ist ebenfalls möglich, eine
Die folgende Konfiguration sorgt dafür, dass alle
Skriptausgaben, die als text/html
gekennzeichnet
sind, zuerst vom INCLUDES
-Filter und dann vom
DEFLATE
-Filter verarbeitet werden.
Die Aktivierung von Filtern mittels
Wenn Sie jedoch sicherstellen wollen, dass der Filter
angewendet wird, sollten Sie den Content-Type z.B. mit
Die Typ-gebundenen Ausgabefilter werden niemals auf Proxy-Anfragen angewendet.
Die %2F
für /
und auf entsprechenden Systemen zusätzlich
%5C
für \
) enthalten. Normalerweise werden
derartige URLs mit einem 404-Fehler (Nicht gefunden) abgewiesen.
On
ist
vor allem in Verbindung mit PATH_INFO
hilfreich.
Das Erlauben von Schrägstrichen impliziert nicht deren
Dekodierung. Vorkommen von %2F
oder %5C
(nur auf entsprechenden Systemen) werden unverändert in der
ansonsten dekodierten URL belassen.
.htaccess
-Dateien
erlaubt sind.Wenn der Server eine .htaccess
-Datei (wie durch
Wenn diese Anweisung auf None
gesetzt wird, dann
werden .htaccess-Dateien komplett
ignoriert. In diesem Fall wird der Server nicht einmal versuchen,
die .htaccess
-Dateien im Dateisystem zu lesen.
Wenn diese Anweisung auf All
gesetzt wird, dann
ist jede Direktive in den .htaccess
-Dateien erlaubt,
die den Kontext
.htaccess besitzt.
Der Direktiven-Typ kann eine der folgenden Anweisungsgruppen sein.
Beispiel:
Im obigen Beispiel erzeugen alle Direktiven einen internal server
error AuthConfig
noch der Gruppe Indexes
angehören.
Die Direktive legt den Namen des Autorisierungsbereiches
Beispiel:
Die AuthName
übergebene Zeichenkette ist das,
was in dem von den meisten Browsern angebotenen Passwort-Dialog
angezeigt wird.
Die Direktive wählt die Art der Benutzer-Authentisierung
für ein Verzeichnis aus. Derzeit sind lediglich Basic
und Digest
implementiert.
Um zu funktionieren, muss die Anweisung von den Direktiven
Die Direktive wird zur Steuerung verwendet, wie Apache
den Interpreter ermittelt, der zur Ausführung von
CGI-Skripten verwendet wird. Beispielsweise bestimmt die Angabe
von CGIMapExtension sys:\foo.nlm .foo
, dass
alle CGI-Scripte mit der Endung .foo
an den
FOO-Interpreter übergeben werden.
Content-MD5
HTTP-Response-HeadernDie Direktive aktiviert die Generierung von
Content-MD5
-Headern, wie sie in RFC1864 bzw. RFC2068
definiert sind.
MD5 ist ein Algorithmus zur Berechnung eines "Datenextrakts"
(zuweilen "Fingerabdruck" genannt)
Der Content-MD5
-Header bietet eine
End-to-End-Integritätsprüfung (MIC)
Beachten Sie bitte, dass dies Performanceprobleme auf Ihrem System verursachen kann, da der Extrakt bei jeder Anfrage berechnet wird (der Wert wird nicht zwischengespeichert).
Content-MD5
wird nur für Dokumente gesendet,
die von
Es kann vorkommen, dass der Server ein Dokument ausliefern muss, dessen Typ er nicht mit Hilfe seiner MIME-Type-Zuordnungen bestimmen kann.
Der Server muss den Client über den Content-Type des
Dokumentes informieren. Daher verwendet er im Falle eines
unbekannten Typs die DefaultType
-Einstellung.
Zum Beispiel:
wäre angemessen für ein Verzeichnis, das viele GIF-Bilder
enthält, deren Dateinamen nicht Endung .gif
besitzen.
Beachten Sie bitte, dass die Direktive anders als
</Directory>
werden dazu verwendet, eine Gruppe
von Direktiven zusammenzufassen, die nur für das genannte
Verzeichnis und dessen Unterverzeichnisse gelten. Jede Direktive,
die im Verzeichnis-Kontext erlaubt ist, kann verwendet werden.
Verzeichnispfad ist entweder der vollständige Pfad zu
einem Verzeichnis oder eine Zeichenkette mit Platzhaltern wie sie von der
Unix-Shell zum Abgleich verwendet werden. In einer Zeichenkette
mit Platzhaltern ?
einem einzelnen Zeichen und *
einer
Zeichenkette beliebiger Länge. Sie können auch auch
[]
-Zeichenbereiche verwenden. Keiner der Platzhalter
entspricht dem Zeichen "/". Daher passt <Directory
/*/public_html>
nicht auf /home/user/public_html
,
<Directory /home/*/public_html>
jedoch tut es.
Beispiel:
Seien Sie vorsichtig mit den Verzeichnispfad-Argumenten. Sie müssen buchstäblich mit dem Dateisystempfad übereinstimmen, den der Apache für den Zugriff auf die Dateien verwendet. Direktiven, die für ein bestimmtes Verzeichnis gelten, gelten nicht für Dateien in dem Verzeichnis, auf die über einen anderen Pfad zugegriffen wird, wie z.B. über verschiedene symbolische Links.
Erweiterte reguläre Ausdrücke können ebenfalls
verwendet werden, indem das Zeichen ~
hinzugefügt
wird. Beispielsweise würde
auf Verzeichnisse in /www/
passen, die aus drei
Zahlen bestehen.
Wenn mehrere
Beim Zugriff auf das Dokument /home/web/dir/doc.html
sind die einzelnen Schritte:
AllowOverride None
an
(deaktiviere .htaccess
-Dateien).AllowOverride FileInfo
(auf das Verzeichnis /home
) an.FileInfo
-Direktive aus
/home/.htaccess
, /home/web/.htaccess
und
/home/web/dir/.htaccess
der Reihe nach an.Reguläre Ausdrücke werden solange nicht berücksichtigt, bis alle normalen Abschnitte angewendet wurden. Anschließend werden alle regulären Ausdrücke in der Reihenfolge geprüft, in der sie in der Konfigurationsdatei auftauchen. Beispielsweise wird bei
der Abschnitt mit dem regulären Ausdruck nicht
berücksichtigt, bis alle normalen
.htaccess
-Dateien angewendet wurden. Dann erst wird
der reguläre Ausdruck mit /home/abc/public_html/abc
abgeglichen und der entsprechende
Beachten Sie bitte, dass der vom Apache voreingestellte
Zugriff für <Directory />
Allow from All
ist. Das bedeutet, dass der Apache
jede Datei ausliefert, die durch eine URL abgebildet wird. Es wird
empfohlen, dass Sie dies durch einen Block wie
ändern und anschließend für Verzeichnisse überschreiben, die Sie verfügbar machen wollen. Für weitere Einzelheiten lesen Sie bitte die Seite zu den Sicherheitshinweisen.
Die Verzeichnisabschnitte erscheinen in der Datei
httpd.conf
.
</DirectoryMatch>
werden dazu verwendet, eine
Gruppe von Direktiven zusammenzufassen, die nur für das
genannte Verzeichnis und dessen Unterverzeichnisse gelten, genauso
wie bei
auf Verzeichnisse in /www/
passen, die aus drei
Zeichen bestehen.
Die Direktive setzt das Verzeichnis, von dem aus
Damit bezieht sich ein Zugriff auf
http://www.my.host.com/index.html
auf
/usr/web/index.html
. Wenn das Verzeichnis nicht
absolut angegeben ist, wird es relativ zu
Die Direktive steuert, ob
Memory-Mapping bedeutet zuweilen eine Performanceverbesserung. In einigen Umgebungen ist es jedoch besser, Memory-Mapping zu deaktivieren, um Problemen während des Betriebs vorzubeugen:
Bei Serverkonfigurationen, die für dieses Problem anfällig sind, sollten Sie das Memory-Mapping für auszuliefernde Dateien deaktivieren, indem Sie schreiben:
Bei per NFS eingebundenen Dateien kann diese Funktion explizit für die störenden Dateien deaktiviert werden, indem Sie angeben:
Die Direktive steuert, ob
Der sendfile-Mechanismus vermeidet getrennte Lese- und Sendeoperationen sowie Puffer-Zuweisungen. Bei einigen Plattformen bzw. Dateisystemen deaktivieren Sie diese Funktion jedoch besser, um Probleme während des Betriebs zu vermeiden:
sendfile
in Verbindung mit bestimmten Netzwerkkarten und IPv6
TCP-Checksummenfehler aus.Bei Serverkonfigurationen, die für dieses Problam anfällig sind, sollten die diese Funktion deaktivieren, indem Sie schreiben:
Bei per NFS oder SMB eingebundenen Dateien kann diese Funktion explizit für die störenden Dateien deaktiviert werden, indem Sie angeben:
Im Falle eines Problems oder Fehlers kann der Apache konfiguriert werden, eine der vier Aktionen auszuführen:
Die erste Option ist Voreinstellung, während die Optionen
2 bis 4 über die Direktive
URLs können bei lokalen Webpfaden mit einem Schrägstrich
(/) beginnen (relativ zum
Außerdem kann der spezielle Wert default
angegeben
werden, um die schlichte, hartkodierte Nachricht des Apache zu verwenden.
Es wird normalerweise nicht benötigt, doch default
stellt die einfach, im Apache hartkodierte Meldung in Konfigurationen
wieder her, die ansonsten von einem existierenden
Wenn Sie eine http
davor), beachten Sie bitte, dass der Apache
eine Umleitung zum Client sendet, um diesem mitzuteilen, wo das
Dokument zu finden ist, auch wenn das Dokument letztlich wieder zum
gleichen Server führt. Das hat mehrere Auswirkungen. Die
wichtigste ist, dass der Client nicht den Original-Statuscode
erhält sondern statt dessen einen Umleitungs-Statuscode. Dies
wiederum kann Web-Robots und andere Clients verwirren, die den
Statuscode dazu verwenden, herauszufinden ob eine URL gültig ist.
Wenn Sie eine entfernte URL in einer Anweisung
ErrorDocument 401
verwenden, wird der Client
darüber hinaus nicht wissen, dass er den Benutzer zur Eingabe
eines Passwortes auffordern muss, da er den Statuscode 401 nicht
erhält. Deshalb müssen Sie sich auf ein lokales
Dokument beziehen, wenn Sie eine Anweisung ErrorDocument
401
verwenden.
Der Microsoft Internet Explorer (MSIE) ignoriert standardmäßig serverseitig generierte Fehlermeldungen, wenn sie "zu kurz" sind und ersetzt sie durch eigene "freundliche" Fehlermeldungen. Die Größe variiert abhängig von der Art des Fehlers, im Allgemeinen zeigt der MSIE jedoch den serverseitig generierten Fehler, anstatt ihn zu verstecken, wenn Ihr Fehlerdokument größer als 512 Bytes ist. Weitere Informationen sind im Artikel Q294807 in der Microsoft Knowledgebase verfügbar.
Obwohl die meisten Fehlermeldungen überschrieben werden
können, werden unter bestimmten Umständen die internen
Meldungen ungeachtet der Einstellung der
In Versionen vor 2.0 wurden Meldungen durch ein einzelnes vorangestelltes Anführungszeichen (") erkannt.
Die Direktive
Wenn der Dateiname mit einem senkrechten Strich (|, engl.: Pipe) beginnt, wird angenommen, dass es sich um einen Befehl handelt, der ausgeführt wird, um das Fehlerprotokolls zu verarbeiten.
Die Verwendung von syslog
anstelle eines Dateinamens
aktiviert die Protokollierung mittels syslogd(8), sofern das System
es unterstützt. Als Voreinstellung wird der syslog-Typ (syslog
facility) local7
verwendet, Sie können dies jedoch
auch überschreiben, indem Sie die Syntax
syslog:facility
verwenden, wobei
facility einer der Namen sein kann, die üblicherweise
in syslog(1) dokumentiert sind.
SICHERHEITSHINWEIS: Lesen Sie das Dokument Sicherheitshinweise zu Einzelheiten darüber, warum Ihre Sicherheit gefährdet sein kann, wenn das Verzeichnis, in dem die Log-Dateien gespeichert werden, für jemand anderen, als den Benutzer, der den Server gestartet hat, beschreibbar ist.
Bei der Eingabe eines Dateipfads auf nicht-Unix-Plattformen sollte darauf geachtet werden, nur (Vorwärts-)Schrägstriche zu verwenden, auch wenn die Plattform rückwärts gerichtete Schrägstriche (Backslashes) erlaubt. Im Allgemeinen ist es eine gute Idee, innerhalb der Konfigurationsdateien immer Vorwärts-Schrägstriche zu verwenden.
Wenn dem Dokument eine Datei zugrundeliegt, bestimmt die Direktive
ETag
(Entity-Tag) verwendet
werden. (Der Wert von ETag
wird bei der Cache-Verwaltung
zur Einsparung von Netzwerk-Bandbreite benutzt.) Im Apache 1.3.22 und
früher wurde der ETag
-Wert stets aus
der I-Node, der Größe und dem Datum der letzten
Änderung (mtime) der Datei gebildet. Die Direktive
ETag
-Angabe in die Antwort eingefügt,
wenn dem Dokument eine Datei zugrundeliegt.Den Schlüsselwörtern INode
, MTime
und Size
kann entweder ein +
oder ein
-
vorangestellt werden, was die Änderung einer
Vorgabe erlaubt, die von einem größeren Umfeld
geerbt wurde. Jedes Schlüselwort ohne ein solches Prefix
hebt die ererbte Einstellung sofort und vollständig auf.
Wenn die Konfiguration für ein Verzeichnis
FileETag INode MTime Size
enthält
und die eines Unterverzeichnisses FileETag -INode
,
dann ist die Einstellung für das Unterverzeichnis (die an
jedes Unter-Unterverzeichnis weitervererbt wird, welches dies nicht
überschreibt) äquivalent mit
FileETag MTime Size
.
Die Direktive </Files>
-Anweisung besitzen.
Die innerhalb dieses Abschnittes angegebenen Direktiven werden auf
jedes Objekt mit einem Basisnamen (letzte Komponente des Dateinamens)
angewendet, der auf die angegebenen Dateinamen passt. .htaccess
-Dateien gelesen sind, jedoch vor den
Das Argument Dateiname kann einen Dateinamen oder eine
Zeichenkette mit Platzhaltern enthalten, wobei ?
auf ein
einzelnes Zeichen passt und *
auf eine beliebige Folge von
Zeichen. Erweiterte reguläre Ausdrücke können ebenfalls
verwendet werden, indem das Zeichen ~
hinzugefügt wird.
Beispielsweise würde
auf die gebräuchlichsten Grafikformate im Internet passen.
Beachten Sie bitte, dass die .htaccess
-Dateien verwendet werden können.
Dies erlaubt den Anwendern auf Dateiebene die Kontrolle über ihre
eigenen Dateien.
Die Direktive
auf die gebräuchlichsten Grafikformate im Internet passen.
Wenn sie innerhalb einer .htaccess
-Datei, eines
.gif
kennzeichnen wollen, können Sie angeben:
Beachten Sie bitte, dass die Direktive anders als
Sie können jede None
überschreiben:
Diese Direktive aktiviert die DNS-Abfrage REMOTE_HOST
an CGIs/SSIs übergeben) werden könnnen.
Der Wert Double
bezieht sich auf ein
Double-Reverse-DNS-Lookup. D.h. nachdem ein Reverse-Lookup
durchgeführt wurde, wird dann auf dem Ergebnis ein
Forward-Lookup ausgeführt. Wenigstens eine der IP-Adressen
aus dem Forward-Lookup muss der Originaladresse entsprechen.
(In der "tcpwrappers"-Terminologie wird dies PARANOID
genannt.)
Unabhängig von der Einstellung wird ein Double-Reverse-Lookup
durchgeführt, wenn HostnameLookups Double
setzen. Wenn beispielsweise
nur HostnameLookups On
angegeben ist und eine Anfrage
für ein Objekt erfolgt, welches durch Hostnamen-Beschränkungen
geschützt ist, dann wird CGIs nur das Ergebnis des
Singel-Reverse-Lookups in REMOTE_HOST
übergeben,
egal ob das Doble-Reverse-Lookup fehlschlug oder nicht.
Die Voreinstellung ist Off
, um Netzwerktraffic bei den
Angeboten einzusparen, die nicht tatsächlich Reverse-Lookups
benötigen. Es ist auch für die Endanwender besser, da sie nicht
die zusätzliche Wartezeit ertragen müssen, die ein Lookup mit
sich bringt. Hoch frequentierte Angebote sollten diese Direktive auf
Off
lassen. Das Hilfsprogramm bin
Ihres Installationsverzeichnisses
kompiliert wird, kann dazu verwendet werden, um offline Hostnamen von
protokollierten IP-Adressen nachzuschlagen.
Der Container <IfDefine Test>...</IfDefine>
wird dazu verwendet, Direktiven als bedingt zu kennzeichnen.
Die Direktiven innerhalb eines
In der
!
ParameternameIm ersten Fall werden die Direktiven zwischen der Start- und Endemarkierung nur ausgeführt, wenn der Parameter namens Parametername definiert ist. Die zweite Form kehrt den Test um und führt die Direktiven nur dann aus, wenn Parametername nicht definiert ist.
Das Argument Parametername ist ein sogenanntes
"Define", das beim beim Start des Servers in der
-DParameter
angegeben wird.
Der Container <IfModule
Test>...</IfModule>
wird dazu verwendet,
Direktiven als abhängig von dem Vorhandensein eines speziellen
Moduls zu kennzeichnen. Die Direktiven innerhalb eines
In der
!
ModulIm ersten Fall werden die Direktiven zwischen der Start- und
Endemarkierung nur ausgeführt, das Modul namens
Modul im Apache enthalten ist -- entweder einkompiliert
oder mittels
Das Argument Modul kann entweder der Modulbezeichner oder
der Dateiname des Moduls zum Zeitpunkt seiner Kompilierung sein.
rewrite_module
beispielsweise ist der Bezeichner und
mod_rewrite.c
ist der Dateiname. Wenn ein Modul aus mehreren
Quelltext-Dateien besteht, verwenden Sie den Namen der Datei, welche die
Zeichenfolge STANDARD20_MODULE_STUFF
enthält.
Dieser Container sollte verwendet werden, wenn Sie eine
Konfigurationsdatei benötigen, die unabhängig davon funktioniert,
ob ein bestimmtes Modul verfügbar ist oder nicht. Normalerweise
ist es nicht notwendig, Direktiven in
Die Direktive erlaubt das Einfügen anderer Konfigurationsdateien in die Konfigurationsdatei des Servers.
Shell-typische (fnmatch()
) Platzhlaterzeichen können
dazu verwendet werden, mehrere Dateien auf einmal in alphabetischer
Reihenfolge einzufügen. Wenn
Der angegebene Dateiname kann ein absoluter Pfad sein oder relativ zum
Beispiele:
Oder Sie geben Pfade relativ zu Ihrem
Der Aufruf von apachectl configtest
liefert eine Liste
der Dateien, die während des Konfigurations-Tests verarbeitet
werden:
Die Keep-Alive-Erweiterung von HTTP/1.0 und die
HTTP/1.1-Funktionalität persistenter Verbindungen unterstützt
langlebige HTTP-Sitzungen, die es erlauben, mehrere Anfragen über
die gleich TCP-Verbindung zu senden. In einigen Fällen wurde eine
Beschleunigung der Wartezeiten von beinahe 50% für HTML-Dokumente
mit vielen Bildern festgestellt. Um Keep-Alive-Verbindungen zu aktivieren,
setzen Sie KeepAlive On
.
Bei HTTP/1.0-Clients werden Keep-Alive-Verbindungen nur dann verwendet, wenn sie vom Client eigens angefordert werden. Desweiteren können Keep-Alive-Verbindungen bei einem HTTP/1.0-Client nur dann verwendet werden, wenn die Länge des Inhalts im Voraus bekannt ist. Dies impliziert, dass dynamische Inhalte wie CGI-Ausgaben, SSI-Seiten und servergenerierte Verzeichnisauflistungen im Allgemeinen keine Keep-Alive-Verbindungen mit HTTP/1.0-Clients verwenden. Bei HTTP/1.1-Clients sind Keep-Alive-Verbindungen Voreinstellung, solange nichts anderes angegeben ist. Wenn der Client es anfordert, wird Chunked-Encoding verwendet, um Inhalte mit unbekannter Länge über persistente Verbindungen zu senden.
Dies legt die Anzahl der Sekunden fest, die der Apache auf weitere
Anfragen wartet, bevor er die Verbindung schließt. Nachdem einmal
eine Anfrage entgegen genommen wurde, wird die durch die Direktive
Auf stark belasteten Servern kann ein hoher
Zugriffskontrollen gelten normalerweise für alle
Zugriffsmethoden, was normalerweise auch das gewünschte Verhalten ist.
Im Allgemeinen sollten Zugriffskontrollen nicht in einen
Der Sinn der Direktive POST
, PUT
und DELETE
.
Alle anderen Methoden bleiben ungeschützt:
Sie können eine oder mehrere der folgenden Methoden angeben:
GET
, POST
, PUT
, DELETE
,
CONNECT
, OPTIONS
,
PATCH
, PROPFIND
, PROPPATCH
,
MKCOL
, COPY
, MOVE
,
LOCK
und UNLOCK
. Die Methodennamen
unterscheiden zwischen Groß- und Kleinschreibung. Wenn
GET
verwendet wird, sind HEAD
-Anfragen
ebenfalls eingeschränkt. Die TRACE
-Methode kann nicht
limitiert werden.
</LimitExcept>
werden dazu verwendet, eine Gruppe
von Anweisungen zur Zugriffskontrolle zusammenzufassen, die dann auf
jede HTTP-Methode angewendet werden, die nicht
als Argument angegeben ist. D.h. dies ist das Gegenteil des
Beispiel:
Eine interne Umleitung erfolgt beispielsweise, wenn die Direktive
Die Direktive setzt zwei verschiedene Begrenzungen, welche je Anfrage ausgewertet werden. Die erste Zahl bestimmt die maximale Anzahl der Umleitungen, die aufeinander folgen dürfen. Die zweite Zahl legt fest, wie tief Unteranfragen ineinander verschachtelt werden dürfen. Wenn Sie lediglich eine Zahl angeben, wird sie beiden Begrenzungen zugewiesen.
Die Direktive gibt die Anzahl der Bytes zwischen 0 (unbegrenzt) und 2147483647 (2GB) an, die im Request-Body (Datenteil der Anfrage) erlaubt sind.
Die Direktive PUT
-Methode angewendet, dann muss der Wert mindestens
so groß sein wie irgendeine Darstellungsform, die der Server
für diese Ressource akzeptieren soll.
Die Direktive gibt dem Serveradministrator eine größere Kontrolle gegenüber abnormalem Verhalten von Clients, was bei der Vermeidung einiger Formen von Denial-of-Service-Attacken hilfreich sein kann.
Wenn Sie beispielsweise das Hochladen von Dateien zu einer bestimmten Adresse erlauben, aber die Größe der hochgeladenen Dateien auf 100K beschränken wollen, können Sie die folgende Anweisung verwenden:
Anzahl ist ein Integer-Wert (eine positive Ganzzahl)
zwischen 0 (unbegrenzt) und 32767. Die Voreinstellung wird durch die
Konstante DEFAULT_LIMIT_REQUEST_FIELDS
(100
bei der Auslieferung) zur Kompilierungszeit gesetzt.
Die Direktive
Die Direktive gibt dem Serveradministrator eine größere Kontrolle gegenüber abnormalem Verhalten von Clients, was bei der Vermeidung einiger Formen von Denial-of-Service-Attacken hilfreich sein kann. Der Wert sollte erhöht werden, wenn normale Clients eine Fehlermeldung vom Server erhalten, die besagt, dass mit der Anfrage zu viele Headerzeilen gesendet wurden.
Beispiel:
Die Direktive gibt die Anzahl der Bytes an, die in einem HTTP-Header erlaubt sind.
Die Direktive
Die Direktive gibt dem Serveradministrator eine größere Kontrolle gegenüber abnormalem Verhalten von Clients, was bei der Vermeidung einiger Formen von Denial-of-Service-Attacken hilfreich sein kann.
Beispiel:
Die Direktive legt die Anzahl der Bytes fest, die in der HTTP-Anfragezeile erlaubt sind.
Die Direktive GET
-Anfrage übergeben werden können.
Die Direktive gibt dem Serveradministrator eine größere Kontrolle gegenüber abnormalem Verhalten von Clients, was bei der Vermeidung einiger Formen von Denial-of-Service-Attacken hilfreich sein kann.
Beispiel:
Dies gibt die Grenze für die maximale Größe (in Bytes)
des XML-basierten Request-Bodys an. Der Wert 0
deaktiviert
diese Prüfung.
Beispiel:
Die Direktive </Location>
abgeschlossen wird. .htaccess
-Dateien gelesen wurden, und nach den
Verwenden Sie <Location />
, welches ein einfacher Weg ist, um eine
Konfiguration auf den gesamten Server anzuwenden.
Für alle nicht-Proxy-Anfragen ist die entsprechende URL
ein URL-Pfad in der Form /path/
. Es dürfen weder ein
Schema, noch ein Hostname, noch ein Port, noch ein Query-String einbezogen
werden. Für Proxy-Anfragen hat die Vergleichs-URL die Form
schema://servername/path
. Das Präfix muss angegeben
werden.
Die URL kann Platzhalter verwenden. In einer Zeichenfolge mit
Platzhaltern entspricht ?
einem einzelnen Zeichen und
*
einer beliebigen Zeichenfolge.
Erweiterte reguläre Ausdrücke können ebenfalls
verwendet werden, indem das Zeichen ~
hinzugefügt
wird. Beispielsweise würde
auf URLs passen, welche die Zeichenfolge /extra/data
oder /special/data
enthalten. Die Direktive
Die Funktionalität von foo.com
zuzulassen, könnten Sie
schreiben:
Das Slash-Zeichen hat eine besondere Bedeutung, je nachdem, wo es
in der URL erscheint. Manche werden sein Verhalten vom Dateisystem
gewohnt sein, wo mehrere aufeinanderfolgende Schrägstriche
häufig zu einem Schrägstrich zusammengefaßt werden
(d.h. /home///foo
ist das gleiche wie
/home/foo
). Im URL-Raum ist dies nicht notwendigerweise
genauso. Bei der Direktive
Beispielsweise würde <LocationMatch ^/abc>
auf die angeforderte URL /abc
passen, nicht aber auf
//abc
. Die Direktive <Location /abc/def>
an und die
Anfrage lautet auf /abc//def
, dann greift die Anweisung.
Die Direktive
auf URLs passen, welche die Zeichenfolge /extra/data
oder /special/data
enthalten.
Level | Beschreibung | Beispiel |
---|---|---|
emerg |
Notfall - das System ist unbenutzbar. | "Child cannot open lock file. Exiting"
|
alert |
Maßnahmen müssen unverzüglich ergriffen werden. | "getpwuid: couldn't determine user name from uid"
|
crit |
Kritischer Zustand. | "socket: Failed to get a socket, exiting child"
|
error |
Fehlerbedingung. | "Premature end of script headers"
|
warn |
Warnung. | "child process 1234 did not exit, sending another SIGHUP"
|
notice |
Normaler, aber signifikanter Zustand. | "httpd: caught SIGBUS, attempting to dump core in ..."
|
info |
Information. | "Server seems busy, (you may need to increase
StartServers, or Min/MaxSpareServers)..."
|
debug |
Debug-Level-Nachrichten | "Opening config file ..."
|
Geben Sie einen bestimmten Level an, denn werden Nachrichten von
allen höheren Leveln ebenso angezeigt. Z.B.: Wenn
LogLevel info
eingestellt ist, dann werden Nachrichten der
Log-Level notice
und warn
ebenso eingetragen.
Es wird empfohlen, mindestens den Level crit
zu
verwenden.
Beispiel:
Beim Protokollieren in eine reguläre Datei können
Nachrichten des Levels notice
nicht unterdrückt
werden und werden daher immer protokolliert. Dies trifft allerdings
nicht zu, wenn mittels syslog
protokolliert wird.
Die Direktive 0
sind unbegrenzt viele Anfragen
erlaubt. Wir empfehlen für diese Einstellung einen hohen Wert
für eine maximale Serverleistung.
Beispiel:
Die Direktive
Obwohl Adresse eine Hostname sein kann, wird empfohlen, dass Sie stets eine IP-Adresse verwenden, z.B.:
Mit der
Beachten Sie, dass der "Hauptserver" und jeder
_default_
-Server niemals bei einer
Anfrage an einer
Optional können Sie die Nummer eines Ports angeben, an dem namensbasierte virtuelle Hosts verwendet werden sollen. Beispiel:
IPv6-Adressen müssen, wie im folgenden Beispiel angegeben, in eckige Klammern eingeschlossen werden:
Um an allen Schnittstellen Anfragen zu empfangen, können Sie
*
als Argument verwenden.
Beachten Sie, dass das Argument der
Die Direktive
Option kann auf None
gesetzt werden, wobei
keine der besonderen Eigenschaften verfügbar sind, oder auf eines
oder mehrere der folgenden:
All
MultiViews
. Dies ist
die Voreinstellung.ExecCGI
FollowSymLinks
Auch wenn der Server symbolischen Links folgt, bedeutet dies
nicht, dass der zum Abgleich gegen
Beachten Sie auch, dass diese Option innerhalb eines
Includes
IncludesNOEXEC
#exec cmd
und #exec cgi
sind jedoch deaktiviert. Es ist aber noch
möglich, CGI-Skripte aus
#include virtual
einzubinden.Indexes
index.html
) befindet, dann liefert
MultiViews
SymLinksIfOwnerMatch
Wenn mehrere +
oder -
vorangestellt wird, werden die Optionen
zusammengemischt. Jede Option mit vorangestelltem +
wird
zu den momentan gültigen Optionen hinzugefügt und jede Option
mit vorangestelltem -
wird aus den derzeit gültigen
Optionen entfernt.
So wird zum Beispiel ohne die Zeichen +
und
-
für das Verzeichnis /web/docs/spec
wird jetzt
lediglich Includes
gesetzt. Wenn die zweite
+
-
und -
-Zeichen verwenden würde,
dann würden die Optionen FollowSymLinks
und
Includes
für das Verzeichnis /web/docs/spec
gesetzt.
Die Verwendung von -IncludesNOEXEC
oder
-Includes
deaktiviert Server Side Includes unabhängig
von der vorigen Einstellung vollständig.
Die Voreinstellung ist All
, sofern keine anderen Angaben
gemacht wurden.
Die Direktive wählt aus, welche authentisierten Benutzer auf eine Ressource zugreifen dürfen. Folgende Syntax ist erlaubt:
Require user User-ID [User-ID]
...
Require group Gruppenname [Gruppenname]
...
Require valid-user
Zugriffskontrollen, die in dieser Form angewandt werden, gelten
für alle Methoden. Dies ist normalerweise
gewünscht. Wenn Sie Zugriffskontrollen nur auf bestimmte
Methoden anwenden möchten, während andere Methoden
ungeschützt bleiben, dann müssen Sie die
Akzeptiert einen oder zwei Parameter. Der erste Paramater setzt eine
weiche Ressourcenbegrenzung für alle Prozesse, der zweite Parameter
setzt die Maximalgrenze für die Ressourcennutzung. Jeder der
Parameter kann eine Zahl oder max
sein. max
zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
erfordert, dass der Server als root
läuft, zumindest in
der anfänglichen Startphase.
Dies wird auf Prozesse angewendet, die von Anfragen bearbeitenden Apache-Kindprozessen abgespalten werden, nicht auf die Apache-Kindprozesse selbst. Das beinhaltet CGI-Skripte und SSI-exec-Befehle, nicht jedoch Prozesse, die vom Apache-Elternprozess abgespalten werden, wie z.B. Protokollierung.
CPU-Ressourcenbegrenzung wird in Sekunden pro Prozess ausgedrückt.
Akzeptiert einen oder zwei Parameter. Der erste Paramater setzt eine
weiche Ressourcenbegrenzung für alle Prozesse, der zweite Parameter
setzt die Maximalgrenze für die Ressourcennutzung. Jeder der
Parameter kann eine Zahl oder max
sein. max
zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
erfordert, dass der Server als root
läuft, zumindest in
der anfänglichen Startphase.
Dies wird auf Prozesse angewendet, die von Anfragen bearbeitenden Apache-Kindprozessen abgespalten werden, nicht auf die Apache-Kindprozesse selbst. Das beinhaltet CGI-Skripte und SSI-exec-Befehle, nicht jedoch Prozesse, die vom Apache-Elternprozess abgespalten werden, wie z.B. Protokollierung.
Die Begrenzung des Speicherverbrauchs wird in Bytes pro Prozess ausgedrückt.
Akzeptiert einen oder zwei Parameter. Der erste Paramater setzt eine
weiche Ressourcenbegrenzung für alle Prozesse, der zweite Parameter
setzt die Maximalgrenze für die Ressourcennutzung. Jeder der
Parameter kann eine Zahl oder max
sein. max
zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
erfordert, dass der Server als root
läuft, zumindest in
der anfänglichen Startphase.
Dies wird auf Prozesse angewendet, die von Anfragen bearbeitenden Apache-Kindprozessen abgespalten werden, nicht auf die Apache-Kindprozesse selbst. Dies beinhaltet CGI-Skripte und SSI-exec-Befehle, nicht jedoch Prozesse, die vom Apache-Elternprozess abgespalten werden, wie z.B. Protokollierung.
Prozessbegrenzungen steuern die Anzahl der Prozesse pro Benutzer.
Wenn CGI-Prozesse nicht unter anderen Benutzerkennungen als der
User-ID des Webservers laufen, dann beschränkt diese Direktive
die Anzahl der Prozesse, die der Server selbst erstellen kann.
Kennzeichen einer solchen Situation sind
cannot fork
-Meldungen
kann nicht abspalten
error_log
.
Verfahrensweise für den Zugriff, falls sowohl All
oder Any
sein. Die Direktive ist
nur dann nützlich, wenn der Zugriff zu einem bestimmten Bereich
durch Benutzername/Passwort und Clientrechner-Adressen
eingeschränkt ist. In diesem Fall verlangt die Voreinstellung
(All
), dass der Client die Adressbeschränkung passiert
und eine gültige Benutzerkennung und ein gültiges
Passwort übermittelt. Mit der Auswahl Any
wird dem
Client der Zugriff erlaubt, wenn er entweder die Rechner-Beschänkung
passiert oder einen gültigen Benutzernamen und ein gültiges
Passwort übermittelt. Dies kann verwendet werden, um einen Bereich
mit einem Passwort zu schützen, jedoch Clients von bestimmten
Adressen ohne Abfrage des Passwortes zuzulassen.
Wenn Sie beispielsweise möchten, dass Personen aus Ihrem privaten Netzwerk unbechänkten Zugriff zu Teilen Ihres Webangebots haben, jedoch verlangen, dass Personen außerhalb Ihres privaten Netzwerks ein Passwort übergeben müssen, können Sie eine Konfiguration ähnlich der folgenden verwenden:
Seit Version 2.0.51 können
Registry-Strict
ist verfügbar seit Apache
2.0.Die Direktive steuert, wie der Apache den Interpreter zur Ausführung
von CGI-Skripten bestimmt. Die Voreinstellung ist Script
. Dies
veranlaßt den Apache, den Interpreter zu verwenden, auf den die
Shebang-Zeile (erste Zeile, beginnt mit #!
) im Skript zeigt.
Auf Win32-Systemen sieht diese Zeile üblicherweise so aus:
oder, wenn perl
im Pfad (Umgebungsvariable PATH
) liegt,
einfach:
Die Einstellung ScriptInterpreterSource Registry
veranlaßt eine Suche in HKEY_CLASSES_ROOT
der
Windows-Registrierungsdatenbank und verwendet die Endung der Skript-Datei
(z.B. .pl
) als Suchargument. Der durch den Unterschlüssel
Shell\ExecCGI\Command
oder, falls dieser nicht existiert,
Shell\Open\Command
definierte Befehl wird zum Öffnen der
Skript-Datei verwendet. Wenn der Schlüssel zur Dateiendung oder
beide Unterschlüssel fehlen, dann verwendet der Apache die Option
Script
.
Seien Sie vorsichtig, ScriptInterpreterSource Registry
bei
Verzeichnissen zu verwenden, auf die eine Registry
kann
unerwünschte Programmaufrufe bei Dateien verursachen, die
üblicherweise nicht ausgeführt werden. Auf den meisten
Windows-Systemen beispielsweise startet der voreingestellte
Öffnen-Befehl für .htm
-Dateien den Microsoft
Internet Explorer, so dass jede HTTP-Anfrage nach einer existierenden
.htm
-Datei im Skript-Verzeichnis den Browser im Hintergrund
starten würde. Dies ist eine wirksame Methode, Ihr System binnen
etwa einer Minute zum Absturz zu bringen.
Die seit Apache 2.0 neue Option Registry-Strict
macht das gleiche wie Registry
, verwendet jedoch nur den
Unterschlüssel Shell\ExecCGI\Command
. Der Schlüssel
ExecCGI
ist gewöhnlich nicht voreingestellt. Er muss
manuell eingerichtet werden und schützt Ihr System so for
versehentlichen Programmaufrufen.
httpd
das übergebene
Argument nicht als URL erkennt, nimmt er an, dess es sich um eine
E-Mail-Adresse handelt und stellt in Hyperlinks
mailto:
voran. Es ist jedoch sogar sinnvoll, eine
E-Mail-Adresse zu verwenden, da viele CGI-Skripte davon ausgehen. Wenn Sie
eine URL verwenden möchten, sollten Sie auf einem anderen unter Ihrer
Kontrolle stehenden Server verweisen. Andernfalls können Besucher Sie
im Fehlerfall möglicherweise nicht kontaktieren.
Es kann sich lohnen, hierfür eine reservierte Adresse anzugeben, z.B.
da Anwender nicht unbedingt erwähnen, dass sie vom Server sprechen!
Die Direktive
Die Direktive simple.example.com
lautet, die Maschine jedoch
auch einen DNS-Alias www.example.com
besitzt und Sie den
Webserver so identifizieren möchten, sollten Sie die folgende
Anweisung verwenden:
Wenn kein
Wenn Sie namensbasierte
virtuelle Hosts verwenden, gibt Host:
-Header der Anfrage auftauchen muss,
damit sie diesem virtuellen Host zugeordnet wird.
Lesen Sie bitte die Beschreibung der Direktive
Die Direktive
Die Direktive conf/
und
logs/
. Relative Pfadangaben anderer Direktiven (wie z.B.
httpd
-Option
-d
Die Direktive
Die (Vor-)Einstellung Off
unterdrückt die
Fußzeile (und ist damit kompatibel zum Verhalten des Apache 1.2 und
früher). Die Einstellung On
fügt schlicht eine
Zeile mit der Versionsnummer des Servers und dem Servernamen (EMail
erstellt zusätzlich einen
"mailto:"-Verweis zum Serveradministrator (
Ab Version 2.0.44 werden die Details der angegebenen Versionsnummer des
Servers von der Direktive
Server
die Direktive steuert, ob der Response-Header Server
,
der an den Client zurückgesendet wird, eine Beschreibung des
allgemeinen Betriesbsystemtyps des Servers wie auch Informationen
über einkompilierte Module enthält.
ServerTokens Prod[uctOnly]
Server:
Apache
ServerTokens Major
Server:
Apache/2
ServerTokens Minor
Server:
Apache/2.0
ServerTokens Min[imal]
Server:
Apache/2.0.41
ServerTokens OS
Server: Apache/2.0.41
(Unix)
ServerTokens Full
(oder nicht angegeben)Server: Apache/2.0.41
(Unix) PHP/4.2.2 MyMod/1.2
Diese Einstellung gilt für den gesamten Server und kann nicht auf Virtual-Host-Basis aktiviert oder deaktiviert werden.
Ab Version 2.0.44 steuert diese Direktive auch die Informationen, die
durch die Direktive
Wenn die Direktive innerhalb einer .htaccess
-Datei
oder in einem .htaccess
-Datei in
dem Verzeichnis schreiben:
Noch ein Beispiel: wenn Sie den Server immer, wenn die URL
http://servername/status
aufgerufen wird, einen
Statusbericht anzeigen lassen möchten, dann können
Sie folgendes in die httpd.conf
schreiben:
Sie können eine zuvor definierte
None
verwenden.
Die Direktive
Wenn mehr als ein Filter angegeben wird, dann müssen diese durch Semikolon voneinander getrennt in der Reihenfolge angegeben werden, in der sie die Daten verarbeiten sollen.
Die Direktive
Die folgende Konfiguration verarbeitet zum Beispiel alle Dateien
im Verzeichnis /www/data
als Server Side Includes.
Wenn mehr als ein Filter angegeben wird, dann müssen diese durch Semikolon voneinander getrennt in der Reihenfolge angegeben werden, in der sie die Daten verarbeiten sollen.
Die Direktive
Wir haben vor, diese Zeitspannen in Zukunft separat konfigurierbar zu machen. Vor Version 1.2 war der Zeitgeber auf 1200 voreingestellt, wurde dann aber auf 300 herabgesetzt, was immer noch weit mehr ist, als in den meisten Situationen benötigt wird. Die Voreinstellung wurde nicht weiter herabgesetzt, da gelegentlich noch Stellen im Code existieren können, wo der Zeitgeber nicht zurückgesetzt wird, wenn ein Paket verschickt wird.
In vielen Situationen muss der Apache eine
selbstreferenzierende URL -- d.h. eine URL, die auf den selben
Server zurück verweist -- zusammenbauen. Bei UseCanonicalName
On
verwendet der Apache den Hostnamen und Port, der in der
SERVER_NAME
und SERVER_PORT
verwendet.
Bei UseCanonicalName Off
bildet der Apache
selbstreferenzierende URLs, indem er den vom Client übermittelten
Hostnamen und Port verwendet, sofern diese vorhanden sind (andernfalls
wird der kanonische Name, wie oben beschrieben, benutzt). Die Werte
sind die gleichen, die zur Anwendung von namensbasierten virtuellen Hosts
verwendet werden, und sie sind mit den gleichen Clients verfügbar
Host
-Header mitschickenSERVER_NAME
und SERVER_PORT
werden ebenfalls aus den vom Client angeboten Werten erstellt.
Ein Intranet-Server, auf den Anwender mit kurzen Namen wie
www
zugreifen, ist ein Beispiel, wo dies sinnvoll sein kann.
Sie werden bemerken, dass der Apache den Benutzer auf
http://www.domain.com/splat/
umleitet, wenn dieser einen
Kurznamen und eine URL, die einem Verzeichnis entspricht, ohne
abschließenden Schrägstrich eingibt, wie z.B.
http://www/splat
. Wenn Sie Authentisierung aktiviert haben,
bewirkt dies, dass der Benutzer sich zweimal identifizieren muss
(einmal für www
und noch einmal für
www.domain.com
-- lesen Sie für weitere Informationen die
FAQ zu diesem Thema). Wenn Off
gesetzt ist, denn wird der Apache zu
http://www/splat/
umleiten.
Es existiert noch eine dritte Option, UseCanonicalName DNS
,
die für den Betrieb von IP-basierten Massen-Virtual-Hosts gedacht ist,
um antiquierte Clients zu unterstützen, die keinen
Host:
-Header bereit stellen. Um selbstreferenzierende
URLs zu ermitteln, führt der Apache bei dieser Option ein
Reverse-DNS-Lookup auf die IP-Adresse des Servers aus, zu der der Client
Verbindung aufgenommen hat.
Wenn CGI-Skripte Vermutungen aufgrund des Wertes von
SERVER_NAME
anstellen, können sie durch diese
Option fehlschlagen. Clients steht es im Wesentlichen frei, einen Wert
für den Hostnamen anzugeben, wie er will. Wenn das
CGI-Skript SERVER_NAME
jedoch lediglich dazu verwendet,
selbstreferenzierende URLs zu erstellen, sollte das gerade noch
in Ordnung sein.
</VirtualHost>
werden dazu verwendet, eine Gruppe
von Direktiven zusammenzufassen, die nur auf einen bestimmten virtuellen
Host angewendet werden. Jede Direktive, die im Virtual-Host-Kontext
zulässig ist, kann verwendet werden. Wenn der Server eine Anfrage
für ein bestimmtes Dokument eines bestimmten virtuellen Hosts
empfängt, dann benutzt er die im
*
, welches nur in Kombination mit
NameVirtualHost *
verwendet wird, um allen IP-Adressen
zu entsprechen._default_
, die nur mit IP-basierten
virtuellen Hosts verwendet wird, um nicht zugewiesene IP-Adressen
aufzufangen.IPv6-Adressen müssen in eckigen Klammern angegeben werden, da die optionale Portnummer sonst nicht erkannt werden kann. Hier ein IPv6-Beispiel:
Jeder virtuelle Host muss einer anderen IP-Adresse, einem anderen Port
oder einem anderen Hostnamen für den Server entsprechen. Im ersten
Fall muss die Servermaschine so eingerichtet sein, dass sie IP-Pakete
für mehrere Adressen akzeptiert. (Wenn der Rechner nicht mehrere
Netzwerkkarten besitzt, kann dies mit dem Befehl ifconfig
alias
durchgeführt werden -- sofern Ihr Betriebssystem das
unterstützt).
Die Verwendung von
Bei der Verwendung IP-basierter virtuellen Hosts kann der spezielle
Name _default_
benutzt werden. In diesem Fall weist
der Apache jede IP-Adresse diesem virtuellen Host zu, die nicht explizit in
einem anderen virtuellen Host angegeben ist. Falls kein virtueller Host
_default_
angegeben ist, wird die "Hauptserver"-Konfiguration,
die aus allen Definitionen außerhalb der Virtual-Host-Abschnitte
besteht, für nicht passende IPs verwendet. (Beachten Sie jedoch,
dass eine IP-Adressen die zu einer _default_
verwendet.
Lesen Sie für weitere Details die Dokumentation zu namensbasierten virtuell Hosts.)
Sie können einen speziellen :Port
angeben,
um den entsprechenden Port zu wechseln. Falls nicht angegeben, wird
er auf den gleichen Port voreingestellt, wie die letzte
:*
angeben, um alle
Ports dieser Adresse zu akzeptieren. (Dies wird zusammen mit
_default_
empfohlen.)
Lesen Sie das Dokument Sicherheitshinweise für Details, warum Ihre Sicherheit gefährdet sein kann, wenn das Verzeichnis, in dem Protokolldateien gespeichert werden, für jemanden anderes als den Benutzer beschreibbar ist, der den Server gestartet hat.