Apache-Container sind spezielle Konfigurationsanweisungen, die andere Anweisungen gruppieren. Die Container verwenden Tags im XML-Stil, was bedeutet, dass der Anfang eines Containers
Dieser Container wendet Anweisungen auf Verzeichnisse innerhalb von Verzeichnispfad an. Das Beispiel wendet die Direktiven Deny, Allow und AllowOverride auf alle Dateien und Verzeichnisse innerhalb der Verzeichnishierarchie /var/www/html/test an. Die Einrückung dient nur der Lesbarkeit.
<Directory /var/www/html/test> Deny from all Allow from 192.168.2. AllowOverride All </Directory>
Das AllowOverride Direktive in diesem Container gibt Klassen von Direktiven an, die in .htaccess-Dateien erlaubt sind. Die .htaccess-Dateien sind andere Konfigurationsdateien, die normalerweise Anweisungen zur Benutzerauthentifizierung enthalten. Die ALLE Argument für AllowOverride bedeutet, dass alle Klassen von Direktiven in den .htaccess-Dateien erlaubt sind. Es gibt Klassen von Anweisungen, die die Autorisierung, den Client-Zugriff, die Verzeichnisindizierung und andere steuern.
Dieser Container wendet Anweisungen an, wenn Modulname geladen ist. Mit dem optionalen Ausrufezeichen macht Apache das Gegenteil; Das heißt, es setzt die Anweisungen im Container, wenn der Modulname nicht geladen ist. Ein Beispiel ist wie folgt:
<IfModule mod_userdir.c> UserDir disabled </IfModule>
Dieser Container beschränkt Zugriffssteuerungsanweisungen auf bestimmte Methoden. Eine HTTP-Methode gibt Aktionen an, die auf einem Uniform Resource Identifier (URI) ausgeführt werden sollen. Beispiele für Methoden sind GET (Standard), PUT, POST und OPTIONS. Das folgende Beispiel deaktiviert HTTP-Uploads (PUT) von Systemen, die sich nicht in der Domäne example.com befinden:
<Limit PUT> Order deny,allow Deny from all Allow from .example.com </Limit>
Dieser Container ist das Gegenteil des Limit-Containers, da er die Zugriffssteuerungsanweisungen auf
alle außer angegebenen Methoden beschränkt. Das folgende Beispiel verwendet den LimitExcept-Container, veranschaulicht aber auch, dass Container geschachtelt werden können. Dieses Beispiel steuert den Zugriff auf UserDir-Verzeichnisse, indem diese Verzeichnisse auf schreibgeschützt beschränkt werden:
<Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Options MultiViews Indexes SymLinksIfOwnerMatch \ IncludesNoExec <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> </Directory>
Die Direktive Options steuert die Serverfunktionen nach Verzeichnis. Einige davon werden beschrieben:
- MultiViews :Ermöglicht beispielsweise die Anzeige einer Seite in verschiedenen Sprachen
- Indizes :Erzeugt eine Verzeichnisliste, wenn die DirectoryIndex-Direktive nicht gesetzt ist
- SymLinksIfOwnerMatch :Folgt symbolischen Links, wenn die Datei oder das Verzeichnis, auf das bzw. das verwiesen wird, denselben Besitzer hat wie der Link