Kontejnery Apache jsou speciální konfigurační direktivy, které seskupují další direktivy. Kontejnery používají značky ve stylu XML, což znamená, že začátek kontejneru je
Tento kontejner aplikuje direktivy na adresáře v adresáři-cesta. Příklad aplikuje direktivy Deny, Allow a AllowOverride na všechny soubory a adresáře v hierarchii adresářů /var/www/html/test. Odsazení je pouze pro čitelnost.
<Directory /var/www/html/test> Deny from all Allow from 192.168.2. AllowOverride All </Directory>
AllowOverride direktiva v tomto kontejneru určuje třídy direktiv, které jsou povoleny v souborech .htaccess. Soubory .htaccess jsou další konfigurační soubory, které obvykle obsahují direktivy pro ověření uživatele. VŠE argument pro AllowOverride znamená, že v souborech .htaccess jsou povoleny všechny třídy direktiv. Existují třídy direktiv, které řídí autorizaci, řídí klientský přístup, řídí indexování adresářů a další.
Tento kontejner použije direktivy, pokud je načten název-modulu. S volitelným vykřičníkem Apache udělá opak; to znamená, že nastaví direktivy v kontejneru, pokud není načten název-modulu. Příklad je následující:
<IfModule mod_userdir.c> UserDir disabled </IfModule>
Tento kontejner omezuje direktivy řízení přístupu na zadané metody. Metoda HTTP určuje akce, které se mají provést s identifikátorem URI (Uniform Resource Identifier). Příklady metod jsou GET (výchozí), PUT, POST a OPTIONS. Následující příklad zakáže odesílání HTTP (PUT) ze systémů, které nejsou v doméně example.com:
<Limit PUT> Order deny,allow Deny from all Allow from .example.com </Limit>
Tento kontejner je opakem kontejneru Limit v tom, že omezuje direktivy řízení přístupu na
všechny kromě specifikovaných metod. Následující příklad používá kontejner LimitExcept, ale také ukazuje, že kontejnery lze vnořit. Tento příklad řídí přístup k adresářům UserDir omezením těchto adresářů, aby byly pouze pro čtení:
<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>
Direktiva Options řídí funkce serveru podle adresáře. Některé z nich jsou popsány:
- Více zhlédnutí :Umožňuje například zobrazení stránky v různých jazycích
- Indexy :Vygeneruje výpis adresáře, pokud není nastavena direktiva DirectoryIndex
- SymLinksIfOwnerMatch :Následuje symbolické odkazy, pokud soubor nebo adresář, na který odkazuje, má stejného vlastníka jako odkaz