mirror of
https://github.com/apache/httpd.git
synced 2025-05-30 01:07:09 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@421086 13f79535-47bb-0310-9956-ffa450edef68
3357 lines
185 KiB
XML
3357 lines
185 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="de" xml:lang="de"><head><!--
|
|
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
|
This file is generated from xml source: DO NOT EDIT
|
|
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
|
-->
|
|
<title>core - Apache HTTP Server</title>
|
|
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
|
|
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
|
|
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
|
|
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
|
|
<body>
|
|
<div id="page-header">
|
|
<p class="menu"><a href="../mod/">Module</a> | <a href="../mod/directives.html">Direktiven</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossar</a> | <a href="../sitemap.html">Seitenindex</a></p>
|
|
<p class="apache">Apache HTTP Server Version 2.3</p>
|
|
<img alt="" src="../images/feather.gif" /></div>
|
|
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
|
|
<div id="path">
|
|
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP-Server</a> > <a href="http://httpd.apache.org/docs/">Dokumentation</a> > <a href="../">Version 2.3</a> > <a href="./">Module</a></div>
|
|
<div id="page-content">
|
|
<div id="preamble"><h1>Apache-Kernfunktionen</h1>
|
|
<div class="toplang">
|
|
<p><span>Verfügbare Sprachen: </span><a href="../de/mod/core.html" title="Deutsch"> de </a> |
|
|
<a href="../en/mod/core.html" hreflang="en" rel="alternate" title="English"> en </a> |
|
|
<a href="../ja/mod/core.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a></p>
|
|
</div>
|
|
<div class="outofdate">Diese Übersetzung ist möglicherweise
|
|
nicht mehr aktuell. Bitte prüfen Sie die englische Version auf
|
|
die neuesten Änderungen.</div>
|
|
<table class="module"><tr><th><a href="module-dict.html#Description">Beschreibung:</a></th><td>Ständig verfügbare Kernfunktionen des Apache HTTP
|
|
Servers</td></tr>
|
|
<tr><th><a href="module-dict.html#Status">Status:</a></th><td>Core</td></tr></table>
|
|
</div>
|
|
<div id="quickview"><h3 class="directives">Direktiven</h3>
|
|
<ul id="toc">
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#acceptpathinfo">AcceptPathInfo</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#accessfilename">AccessFileName</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#adddefaultcharset">AddDefaultCharset</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#addoutputfilterbytype">AddOutputFilterByType</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#allowencodedslashes">AllowEncodedSlashes</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#allowoverride">AllowOverride</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#authname">AuthName</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#authtype">AuthType</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#cgimapextension">CGIMapExtension</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#contentdigest">ContentDigest</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#defaulttype">DefaultType</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#directory"><Directory></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#directorymatch"><DirectoryMatch></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#documentroot">DocumentRoot</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#enablemmap">EnableMMAP</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#enablesendfile">EnableSendfile</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#errordocument">ErrorDocument</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#errorlog">ErrorLog</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#fileetag">FileETag</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#files"><Files></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#filesmatch"><FilesMatch></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#forcetype">ForceType</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#hostnamelookups">HostnameLookups</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#ifdefine"><IfDefine></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#ifmodule"><IfModule></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#include">Include</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#keepalive">KeepAlive</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#keepalivetimeout">KeepAliveTimeout</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#limit"><Limit></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#limitexcept"><LimitExcept></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#limitinternalrecursion">LimitInternalRecursion</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#limitrequestbody">LimitRequestBody</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#limitrequestfields">LimitRequestFields</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#limitrequestfieldsize">LimitRequestFieldSize</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#limitrequestline">LimitRequestLine</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#limitxmlrequestbody">LimitXMLRequestBody</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#location"><Location></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#locationmatch"><LocationMatch></a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#loglevel">LogLevel</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#namevirtualhost">NameVirtualHost</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#require">Require</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#rlimitcpu">RLimitCPU</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#rlimitmem">RLimitMEM</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#rlimitnproc">RLimitNPROC</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#satisfy">Satisfy</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#scriptinterpretersource">ScriptInterpreterSource</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#serveradmin">ServerAdmin</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#serveralias">ServerAlias</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#servername">ServerName</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#serverpath">ServerPath</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#serverroot">ServerRoot</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#serversignature">ServerSignature</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#servertokens">ServerTokens</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#sethandler">SetHandler</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#setinputfilter">SetInputFilter</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#setoutputfilter">SetOutputFilter</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#timeout">TimeOut</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalname">UseCanonicalName</a></li>
|
|
<li><img alt="" src="../images/down.gif" /> <a href="#virtualhost"><VirtualHost></a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="AcceptPathInfo" id="AcceptPathInfo">AcceptPathInfo</a>-<a name="acceptpathinfo" id="acceptpathinfo">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Ressourcen lassen angehängte Pfadangaben zu</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AcceptPathInfo On|Off|Default</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>AcceptPathInfo Default</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Verfügbar ab Apache 2.0.30</td></tr>
|
|
</table>
|
|
<p>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 <code>PATH_INFO</code>
|
|
verfügbar gemacht werden.</p>
|
|
|
|
<p>Nehmen wir beispielsweise an, dass <code>/test/</code> auf ein
|
|
Verzeichnis zeigt, welches lediglich eine Datei <code>here.html</code>
|
|
enthält. Dann wird bei Anfragen nach
|
|
<code>/test/here.html/more</code> und
|
|
<code>/test/nothere.html/more</code> beides Mal <code>/more</code>
|
|
als <code>PATH_INFO</code> ermittelt.</p>
|
|
|
|
<p>Die drei möglichen Argumente für die Direktive
|
|
<code class="directive">AcceptPathInfo</code> sind:</p>
|
|
|
|
<dl>
|
|
<dt><code>Off</code></dt><dd>Eine Anfrage wird nur dann akzeptiert,
|
|
wenn sie exakt auf ein existierendes Verzeichnis (oder eine Datei)
|
|
abgebildet werden kann. Daher würde eine Anfrage mit einer nach dem
|
|
tatsächlichen Dateinamen angehängten Pfadangabe, wie
|
|
<code>/test/here.html/more</code> im obigen Beispiel, den Fehler
|
|
404 NOT FOUND <span class="transnote">(<em>Anm.d.Ü.:</em> nicht gefunden)</span>
|
|
zurückgeben.</dd>
|
|
|
|
<dt><code>On</code></dt>
|
|
<dd>Eine Anfrage wird akzeptiert, wenn eine vorangestellte Pfadangabe
|
|
auf ein existierendes Verzeichnis abgebildet werden kann. Das
|
|
obige Beispiel <code>/test/here.html/more</code> wird akzeptiert,
|
|
wenn <code>/test/here.html</code> auf eine gültige Datei
|
|
zeigt.</dd>
|
|
|
|
<dt><code>Default</code></dt>
|
|
<dd>Die Behandlung von Anfragen mit angehängten Pfadangaben
|
|
wird von dem für die Anfrage verantwortlichen <a href="../handler.html">Handler</a> bestimmt. Der Core-Handler
|
|
für gewöhnliche Dateien weist <code>PATH_INFO</code>-Zugriffe
|
|
standardmäßig zurück. Handler, die Skripte bedienen,
|
|
wie z.B. <a href="mod_cgi.html">cgi-script</a> und
|
|
<a href="mod_isapi.html">isapi-handler</a>, sind im Allgemeinen darauf
|
|
voreingestellt, <code>PATH_INFO</code> zu akzeptieren.</dd>
|
|
</dl>
|
|
|
|
<p>Das eigentliche Ziel von <code>AcceptPathInfo</code> ist es, Ihnen
|
|
das Überschreiben der Voreinstellung der Handler bezüglich
|
|
der Akzeptanz oder Ablehnung von <code>PATH_INFO</code> zu erlauben.
|
|
Eine solche Änderung ist zum Beispiel notwendig, wenn Sie einen
|
|
<a href="../filter.html">Filter</a> wie <a href="mod_include.html">INCLUDES</a> verwenden, um Inhalte
|
|
abhängig von <code>PATH_INFO</code> zu generieren. Der
|
|
Core-Handler würde die Anfrage normalerweise abweisen. Verwenden
|
|
Sie die folgende Konfiguration, um dennoch solch ein Skript zu
|
|
ermöglichen.</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Files "mypaths.shtml"><br />
|
|
<span class="indent">
|
|
Options +Includes<br />
|
|
SetOutputFilter INCLUDES<br />
|
|
AcceptPathInfo On<br />
|
|
</span>
|
|
</Files>
|
|
</code></p></div>
|
|
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="AccessFileName" id="AccessFileName">AccessFileName</a>-<a name="accessfilename" id="accessfilename">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Name der dezentralen Konfigurationsdateien</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AccessFileName <var>Dateiname</var> [<var>Dateiname</var>] ...</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>AccessFileName .htaccess</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>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 <a href="#allowoverride">erlaubt sind</a>.
|
|
Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
AccessFileName .acl
|
|
</code></p></div>
|
|
|
|
<p>Vor der Rücksendung des Dokuments
|
|
<code>/usr/local/web/index.html</code> wird der Server
|
|
<code>/.acl</code>, <code>/usr/.acl</code>,
|
|
<code>/usr/local/.acl</code> und <code>/usr/local/web/.acl</code>
|
|
einlesen, solange diese nicht mit</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory /><br />
|
|
<span class="indent">
|
|
AllowOverride None<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<p>deaktiviert wurden.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#allowoverride">AllowOverride</a></code></li>
|
|
<li><a href="../configuring.html">Konfigurationsdateien</a></li>
|
|
<li><a href="../howto/htaccess.html">.htaccess-Dateien</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="AddDefaultCharset" id="AddDefaultCharset">AddDefaultCharset</a>-<a name="adddefaultcharset" id="adddefaultcharset">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Standard-Charset-Parameter, der bei Antworten vom Content-Type
|
|
<code>text/plain</code> oder <code>text/html</code> hinzugefügt wird
|
|
</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddDefaultCharset On|Off|<var>Zeichenkodierung</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>AddDefaultCharset Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>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
|
|
<code>text/plain</code> oder <code>text/html</code> ist. Dies sollte jedes
|
|
mittels <code>META</code>-Element im Datenteil der Antwort angegebene
|
|
Charset überschreiben. Das genaue Verhalten hängt jedoch oft von
|
|
der Client-Konfiguration des Benutzers ab. Die Einstellung
|
|
<code>AddDefaultCharset Off</code> deaktiviert diese Funktionalität.
|
|
<code>AddDefaultCharset On</code> aktiviert die Standard-Zeichenkodierung
|
|
<code>iso-8859-1</code>. Jeder andere Wert wird als die zu verwendende
|
|
<var>Zeichenkodierung</var> aufgefaßt, die eines der bei <a href="http://www.iana.org/assignments/character-sets">IANA registrierten
|
|
Charset-Werte</a> zur Verwendung in MIME-Medientypen sein sollte. Zum
|
|
Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
AddDefaultCharset utf-8
|
|
</code></p></div>
|
|
|
|
<p><code class="directive">AddDefaultCharset</code> sollte nur verwendet werden,
|
|
wenn von allen Textressourcen, für die es gilt, bekannt ist, dass sie
|
|
in dieser Zeichkodierung vorliegen, oder wenn es zu unbequem ist, ihre
|
|
Zeichenkodierung indivuell zu benennen. Ein solches Beispiel ist das
|
|
Hinzufügen des Charset-Parameters zu Ressourcen, die generierte
|
|
Inhalte enthalten. Ein Beispiel sind CGI-Skript-Altlasten, die aufgrund von
|
|
in die Ausgabe integrierten Daten, die durch den Benutzer übermittelt
|
|
wurden, gegen Cross-Site-Scripting-Angriffe verwundbar sind. Eine bessere
|
|
Lösung wäre jedoch, diese Skripte zu korrigieren (oder zu
|
|
löschen), da die Angabe einer Standard-Zeichencodierung keine
|
|
Anwender schützt, die in ihrem Browser die Funktion zur
|
|
automatischen Erkennung der Zeichenkodierung aktiviert haben.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="../mod/mod_mime.html#addcharset">AddCharset</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="AddOutputFilterByType" id="AddOutputFilterByType">AddOutputFilterByType</a>-<a name="addoutputfilterbytype" id="addoutputfilterbytype">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>einen Ausgabefilter einem bestimmten MIME-Type
|
|
zuordnen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AddOutputFilterByType <var>Filter</var>[;<var>Filter</var>...]
|
|
<var>MIME-Type</var> [<var>MIME-Type</var>] ...</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Verfügbar ab Apache 2.0.33</td></tr>
|
|
</table>
|
|
<p>Die Direktive aktiviert für eine Anfrage abhängig vom
|
|
MIME-Type der Antwort einen bestimmten Ausgabe-<a href="../filter.html">Filter</a>.</p>
|
|
|
|
<p>Das folgende Beispiel verwendet den Filter <code>DEFLATE</code>,
|
|
der von <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code> angeboten wird. Er komprimiert
|
|
jede Ausgabe, die als <code>text/html</code> oder <code>text/plain</code>
|
|
gekennzeichnet ist, (gleichgültig, ob statisch oder dynamisch)
|
|
bevor sie an den Client gesendet wird.</p>
|
|
|
|
<div class="example"><p><code>
|
|
AddOutputFilterByType DEFLATE text/html text/plain
|
|
</code></p></div>
|
|
|
|
<p>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
|
|
<code class="directive">AddOutputFilterByType</code>-Direktive für
|
|
jeden von diesen Filtern zu verwenden.</p>
|
|
|
|
<p>Die folgende Konfiguration sorgt dafür, dass alle
|
|
Skriptausgaben, die als <code>text/html</code> gekennzeichnet
|
|
sind, zuerst vom <code>INCLUDES</code>-Filter und dann vom
|
|
<code>DEFLATE</code>-Filter verarbeitet werden.</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Location /cgi-bin/><br />
|
|
<span class="indent">
|
|
Options Includes<br />
|
|
AddOutputFilterByType INCLUDES;DEFLATE text/html<br />
|
|
</span>
|
|
</Location>
|
|
</code></p></div>
|
|
|
|
<div class="warning"><h3>Hinweis:</h3>
|
|
<p>Die Aktivierung von Filtern mittels
|
|
<code class="directive">AddOutputFilterByType</code> kann in einigen
|
|
Fällen ganz oder teilweise fehlschlagen. Beispielsweise
|
|
werden keine Filter angewendet, wenn der MIME-Type nicht bestimmt
|
|
werden kann und auf die Einstellung der <code class="directive"><a href="#defaulttype">DefaultType</a></code>-Anweisung zurückfällt,
|
|
selbst wenn die <code class="directive"><a href="#defaulttype">DefaultType</a></code>-Einstellung die gleiche ist.</p>
|
|
|
|
<p>Wenn Sie jedoch sicherstellen wollen, dass der Filter
|
|
angewendet wird, sollten Sie den Content-Type z.B. mit
|
|
<code class="directive"><a href="../mod/mod_mime.html#addtype">AddType</a></code> oder
|
|
<code class="directive"><a href="#forcetype">ForceType</a></code> der Ressource
|
|
explizit zuordnen. Das Setzen des Content-Types innerhalb
|
|
eines (nicht-nph) CGI-Skriptes funktioniert ebenfalls
|
|
zuverlässig.</p>
|
|
|
|
<p>Die Typ-gebundenen Ausgabefilter werden niemals auf
|
|
Proxy-Anfragen angewendet.</p>
|
|
</div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="../mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code></li>
|
|
<li><code class="directive"><a href="#setoutputfilter">SetOutputFilter</a></code></li>
|
|
<li><a href="../filter.html">Filter</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="AllowEncodedSlashes" id="AllowEncodedSlashes">AllowEncodedSlashes</a>-<a name="allowencodedslashes" id="allowencodedslashes">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Legt fest, ob kodierte Pfadtrennzeichen in URLs durchgereicht
|
|
werden dürfen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AllowEncodedSlashes On|Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>AllowEncodedSlashes Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Verfügbar ab Apache 2.0.46</td></tr>
|
|
</table>
|
|
<p>Die <code class="directive">AllowEncodedSlashes</code>-Direktive erlaubt die
|
|
Verwendung von URLs, welche kodierte Pfadtrennzeichen (<code>%2F</code>
|
|
für <code>/</code> und auf entsprechenden Systemen zusätzlich
|
|
<code>%5C</code> für <code>\</code>) enthalten. Normalerweise werden
|
|
derartige URLs mit einem 404-Fehler (Nicht gefunden) abgewiesen.</p>
|
|
|
|
<p><code class="directive">AllowEncodedSlashes</code> <code>On</code> ist
|
|
vor allem in Verbindung mit <code>PATH_INFO</code> hilfreich.</p>
|
|
|
|
<div class="note"><h3>Anmerkung</h3>
|
|
<p>Das Erlauben von Schrägstrichen impliziert <em>nicht</em> deren
|
|
<em>Dekodierung</em>. Vorkommen von <code>%2F</code> oder <code>%5C</code>
|
|
(<em>nur</em> auf entsprechenden Systemen) werden unverändert in der
|
|
ansonsten dekodierten URL belassen.</p>
|
|
</div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#acceptpathinfo">AcceptPathInfo</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="AllowOverride" id="AllowOverride">AllowOverride</a>-<a name="allowoverride" id="allowoverride">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Direktiven-Typen, die in <code>.htaccess</code>-Dateien
|
|
erlaubt sind.</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AllowOverride All|None|<var>Direktiven-Typ</var>
|
|
[<var>Direktiven-Typ</var>] ...</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>AllowOverride All</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Verzeichnis</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Wenn der Server eine <code>.htaccess</code>-Datei (wie durch
|
|
<code class="directive"><a href="#accessfilename">AccessFileName</a></code> definiert)
|
|
findet, muss er wissen, welche in der Datei angegebenen Direktiven
|
|
frühere Konfigurationsanweisungen überschreiben
|
|
dürfen.</p>
|
|
|
|
<div class="note"><h3>Nur in <Directory>-Abschnitten verfügbar</h3>
|
|
<code class="directive">AllowOverride</code> ist nur in <code class="directive"><a href="#directory"><Directory></a></code>-Abschnitten
|
|
gültig, die ohne reguläre Ausdrücke definiert wurden, nicht
|
|
in <code class="directive"><a href="#location"><Location></a></code>-,
|
|
<code class="directive"><a href="#directorymatch"><DirectoryMatch></a></code>- oder
|
|
<code class="directive"><a href="#files"><Files></a></code>-Abschnitten.
|
|
</div>
|
|
|
|
<p>Wenn diese Anweisung auf <code>None</code> gesetzt wird, dann
|
|
werden <a href="#accessfilename">.htaccess</a>-Dateien komplett
|
|
ignoriert. In diesem Fall wird der Server nicht einmal versuchen,
|
|
die <code>.htaccess</code>-Dateien im Dateisystem zu lesen.</p>
|
|
|
|
<p>Wenn diese Anweisung auf <code>All</code> gesetzt wird, dann
|
|
ist jede Direktive in den <code>.htaccess</code>-Dateien erlaubt,
|
|
die den <a href="directive-dict.html#Context">Kontext</a>
|
|
.htaccess besitzt.</p>
|
|
|
|
<p>Der <var>Direktiven-Typ</var> kann eine der folgenden
|
|
Anweisungsgruppen sein.</p>
|
|
|
|
<dl>
|
|
<dt>AuthConfig</dt>
|
|
|
|
<dd>
|
|
Erlaubt die Verwendung von Autorisierungs-Anweisungen (<code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmgroupfile">AuthDBMGroupFile</a></code>,
|
|
<code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmuserfile">AuthDBMUserFile</a></code>,
|
|
<code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>,
|
|
<code class="directive"><a href="#authname">AuthName</a></code>,
|
|
<code class="directive"><a href="#authtype">AuthType</a></code>, <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>, <code class="directive"><a href="#require">Require</a></code> <em>usw.</em>).</dd>
|
|
|
|
<dt>FileInfo</dt>
|
|
|
|
<dd>
|
|
Erlaubt die Verwendung von Direktiven zur Steuerung der
|
|
Dokumenttypen (<code class="directive"><a href="#defaulttype">DefaultType</a></code>, <code class="directive"><a href="#errordocument">ErrorDocument</a></code>, <code class="directive"><a href="#forcetype">ForceType</a></code>, <code class="directive"><a href="../mod/mod_negotiation.html#languagepriority">LanguagePriority</a></code>,
|
|
<code class="directive"><a href="#sethandler">SetHandler</a></code>, <code class="directive"><a href="#setinputfilter">SetInputFilter</a></code>, <code class="directive"><a href="#setoutputfilter">SetOutputFilter</a></code>, und
|
|
<code class="module"><a href="../mod/mod_mime.html">mod_mime</a></code>-Direktiven Add* und Remove*
|
|
<em>usw.</em>).</dd>
|
|
|
|
<dt>Indexes</dt>
|
|
|
|
<dd>
|
|
Erlaubt die Verwendung von Direktiven zur Steuerung von
|
|
Verzeichnisindizes (<code class="directive"><a href="../mod/mod_autoindex.html#adddescription">AddDescription</a></code>,
|
|
<code class="directive"><a href="../mod/mod_autoindex.html#addicon">AddIcon</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#addiconbyencoding">AddIconByEncoding</a></code>,
|
|
<code class="directive"><a href="../mod/mod_autoindex.html#addiconbytype">AddIconByType</a></code>,
|
|
<code class="directive"><a href="../mod/mod_autoindex.html#defaulticon">DefaultIcon</a></code>, <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#fancyindexing">FancyIndexing</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#headername">HeaderName</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexignore">IndexIgnore</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#indexoptions">IndexOptions</a></code>, <code class="directive"><a href="../mod/mod_autoindex.html#readmename">ReadmeName</a></code>
|
|
<em>usw.</em>).</dd>
|
|
|
|
<dt>Limit</dt>
|
|
|
|
<dd>
|
|
Erlaubt die Verwendung von Direktiven zur Steuerung des
|
|
Zugriffs von Hosts (<code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code>, <code class="directive"><a href="../mod/mod_authz_host.html#deny">Deny</a></code> und <code class="directive"><a href="../mod/mod_authz_host.html#order">Order</a></code>).</dd>
|
|
|
|
<dt>Options[=<var>Option</var>,...]</dt>
|
|
|
|
<dd>
|
|
Erlaubt die Verwendung von Direktiven zur Steuerung spezieller
|
|
Verzeichniseigenschaften (<code class="directive"><a href="#options">Options</a></code>
|
|
und <code class="directive"><a href="../mod/mod_include.html#xbithack">XBitHack</a></code>). Sie
|
|
können mit einem Gleichheitszeichen gefolgt von einer
|
|
kommaseparierten Liste (ohne Leerzeichen) angeben, welche Optionen mit
|
|
der <code class="directive"><a href="#options">Options</a></code>-Direktive gesetzt
|
|
werden dürfen.</dd>
|
|
</dl>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
AllowOverride AuthConfig Indexes
|
|
</code></p></div>
|
|
|
|
<p>Im obigen Beispiel erzeugen alle Direktiven einen internal server
|
|
error <span class="transnote">(<em>Anm.d.Ü.:</em> Server-interner Fehler)</span>, die weder der
|
|
Gruppe <code>AuthConfig</code> noch der Gruppe <code>Indexes</code>
|
|
angehören.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#accessfilename">AccessFileName</a></code></li>
|
|
<li><a href="../configuring.html">Konfigurationsdateien</a></li>
|
|
<li><a href="../howto/htaccess.html">.htaccess-Dateien</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="AuthName" id="AuthName">AuthName</a>-<a name="authname" id="authname">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Autorisierungsbereich zur Verwendung in der
|
|
HTTP-Authentisierung</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AuthName <var>auth-Bereich</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive legt den Namen des Autorisierungsbereiches
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> Der Autorisierungsbereich wird auch Realm genannt.)</span>
|
|
für ein Verzeichnis fest. Dieser Realm wird dem Client mitgeteilt,
|
|
damit der Anwender weiß, welchen Benutzernamen und welches Passwort
|
|
er zu übermitteln hat. <code class="directive">AuthName</code> akzeptiert ein
|
|
Argument. Falls der Name des Realm Leerzeichen enthält, muss er in
|
|
Anführungszeichen eingeschlossen werden. Um zu funktionieren, muss
|
|
die Anweisung von den Direktiven <code class="directive"><a href="#authtype">AuthType</a></code> und <code class="directive"><a href="#require">Require</a></code> sowie von
|
|
Direktiven wie <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>
|
|
und <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>
|
|
begleitet werden.</p>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
AuthName "Top Secret"
|
|
</code></p></div>
|
|
|
|
<p>Die <code>AuthName</code> übergebene Zeichenkette ist das,
|
|
was in dem von den meisten Browsern angebotenen Passwort-Dialog
|
|
angezeigt wird.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../howto/auth.html">Authentisierung, Autorisierung und
|
|
Zugriffskontrolle</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="AuthType" id="AuthType">AuthType</a>-<a name="authtype" id="authtype">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Art der Authentisierung</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AuthType Basic|Digest</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive wählt die Art der Benutzer-Authentisierung
|
|
für ein Verzeichnis aus. Derzeit sind lediglich <code>Basic</code>
|
|
und <code>Digest</code> implementiert.
|
|
Um zu funktionieren, muss die Anweisung von den Direktiven <code class="directive"><a href="#authname">AuthName</a></code> und <code class="directive"><a href="#require">Require</a></code> sowie von
|
|
Direktiven wie <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>
|
|
und <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>
|
|
begleitet werden.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../howto/auth.html">Authentisierung, Autorisierung und
|
|
Zugriffskontrolle</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="CGIMapExtension" id="CGIMapExtension">CGIMapExtension</a>-<a name="cgimapextension" id="cgimapextension">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Technik zur Bestimmung des Interpreters für
|
|
CGI-Skripte</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>CGIMapExtension <var>CGI-Pfad</var> <var>.Endung</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>ausschließlich NetWare</td></tr>
|
|
</table>
|
|
<p>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 <code>CGIMapExtension sys:\foo.nlm .foo</code>, dass
|
|
alle CGI-Scripte mit der Endung <code>.foo</code> an den
|
|
FOO-Interpreter übergeben werden.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ContentDigest" id="ContentDigest">ContentDigest</a>-<a name="contentdigest" id="contentdigest">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Aktiviert die Generierung von <code>Content-MD5</code>
|
|
HTTP-Response-Headern</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ContentDigest On|Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>ContentDigest Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Options</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive aktiviert die Generierung von
|
|
<code>Content-MD5</code>-Headern, wie sie in RFC1864 bzw. RFC2068
|
|
definiert sind.</p>
|
|
|
|
<p>MD5 ist ein Algorithmus zur Berechnung eines "Datenextrakts"
|
|
(zuweilen "Fingerabdruck" genannt) <span class="transnote">(<em>Anm.d.Ü.:</em> Der "Datenextrakt" wird im
|
|
Englischen als "message digest" oder "fingerprint" bezeichnet.)</span>
|
|
aus beliebig langen Daten. Es gilt als zuverlässig, dass
|
|
Veränderungen an den Daten sich in Veränderungen des
|
|
Extrakts wiederspiegeln.</p>
|
|
|
|
<p>Der <code>Content-MD5</code>-Header bietet eine
|
|
End-to-End-Integritätsprüfung (MIC) <span class="transnote">(<em>Anm.d.Ü.:</em> MIC steht für
|
|
"message integrity check".)</span> des Daten-Inhalts. Ein Proxy oder
|
|
Client kann diesen Header prüfen, um zufällige Veränderungen
|
|
des Entity-Inhalts bei der Übertragung festzustellen.
|
|
Beispielheader:</p>
|
|
|
|
<div class="example"><p><code>
|
|
Content-MD5: AuLb7Dp1rqtRtxz2m9kRpA==
|
|
</code></p></div>
|
|
|
|
<p>Beachten Sie bitte, dass dies Performanceprobleme auf Ihrem
|
|
System verursachen kann, da der Extrakt bei jeder Anfrage
|
|
berechnet wird (der Wert wird nicht zwischengespeichert).</p>
|
|
|
|
<p><code>Content-MD5</code> wird nur für Dokumente gesendet,
|
|
die von <code class="module"><a href="../mod/core.html">core</a></code> bedient werden, nicht jedoch bei
|
|
Modulen. SSI-Dokumente, CGI-Skript-Ausgaben und Byte-Range-Antworten
|
|
besitzen diesen Header beispielsweise nicht.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="DefaultType" id="DefaultType">DefaultType</a>-<a name="defaulttype" id="defaulttype">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>MIME-Content-Type, der gesendet wird, wenn der Server den Typ
|
|
nicht auf andere Weise ermitteln kann.</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>DefaultType <var>MIME-Type</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>DefaultType text/plain</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Es kann vorkommen, dass der Server ein Dokument ausliefern muss,
|
|
dessen Typ er nicht mit Hilfe seiner MIME-Type-Zuordnungen bestimmen
|
|
kann.</p>
|
|
|
|
<p>Der Server muss den Client über den Content-Type des
|
|
Dokumentes informieren. Daher verwendet er im Falle eines
|
|
unbekannten Typs die <code>DefaultType</code>-Einstellung.
|
|
Zum Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
DefaultType image/gif
|
|
</code></p></div>
|
|
|
|
<p>wäre angemessen für ein Verzeichnis, das viele GIF-Bilder
|
|
enthält, deren Dateinamen nicht Endung <code>.gif</code>
|
|
besitzen.</p>
|
|
|
|
<p>Beachten Sie bitte, dass die Direktive anders als <code class="directive"><a href="#forcetype">ForceType</a></code> lediglich den Standard-MIME-Type
|
|
bestimmt. Alle anderen MIME-Type-Definitionen, einschließlich
|
|
Dateierweiterungen, die den Medien-Typ anzeigen können,
|
|
überschreiben diese Voreinstellung.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="Directory" id="Directory"><Directory></a>-<a name="directory" id="directory">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Umschließt eine Gruppe von Direktiven, die nur auf
|
|
das genannte Verzeichnis des Dateisystems und Unterverzeichnisse angewendet
|
|
werden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><Directory <var>Verzeichnispfad</var>>
|
|
... </Directory></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p><code class="directive"><Directory></code> und
|
|
<code></Directory></code> 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.
|
|
<var>Verzeichnispfad</var> 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 <span class="transnote">(<em>Anm.d.Ü.:</em> sogenannte wild-cards)</span> entspricht
|
|
<code>?</code> einem einzelnen Zeichen und <code>*</code> einer
|
|
Zeichenkette beliebiger Länge. Sie können auch auch
|
|
<code>[]</code>-Zeichenbereiche verwenden. Keiner der Platzhalter
|
|
entspricht dem Zeichen "/". Daher passt <code><Directory
|
|
/*/public_html></code> nicht auf <code>/home/user/public_html</code>,
|
|
<code><Directory /home/*/public_html></code> jedoch tut es.
|
|
Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory /usr/local/httpd/htdocs><br />
|
|
<span class="indent">
|
|
Options Indexes FollowSymLinks<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<div class="note">
|
|
<p>Seien Sie vorsichtig mit den <var>Verzeichnispfad</var>-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.</p>
|
|
</div>
|
|
|
|
<p>Erweiterte reguläre Ausdrücke können ebenfalls
|
|
verwendet werden, indem das Zeichen <code>~</code> hinzugefügt
|
|
wird. Beispielsweise würde</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory ~ "^/www/.*/[0-9]{3}">
|
|
</code></p></div>
|
|
|
|
<p>auf Verzeichnisse in <code>/www/</code> passen, die aus drei
|
|
Zahlen bestehen.</p>
|
|
|
|
<p>Wenn mehrere <code class="directive"><Directory></code>-Abschnitte
|
|
(ohne reguläre Ausdrücke) auf ein Verzeichnis (oder
|
|
ein ihm übergeordnetes Verzeichnis) passen, welches ein Dokument
|
|
enthält, dann werden die Direktiven der Reihe nach, angefangen
|
|
beim kürzesten passenden Muster, vermischt mit den Direktiven
|
|
aus den <a href="#accessfilename">.htaccess</a>-Dateien, angewendet.
|
|
Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory /><br />
|
|
<span class="indent">
|
|
AllowOverride None<br />
|
|
</span>
|
|
</Directory><br />
|
|
<br />
|
|
<Directory /home/><br />
|
|
<span class="indent">
|
|
AllowOverride FileInfo<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<p>Beim Zugriff auf das Dokument <code>/home/web/dir/doc.html</code>
|
|
sind die einzelnen Schritte:</p>
|
|
|
|
<ul>
|
|
<li>Wende die Direktive <code>AllowOverride None</code> an
|
|
(deaktiviere <code>.htaccess</code>-Dateien).</li>
|
|
|
|
<li>Wende die Direktive <code>AllowOverride FileInfo</code>
|
|
(auf das Verzeichnis <code>/home</code>) an.</li>
|
|
|
|
<li>Wende jede <code>FileInfo</code>-Direktive aus
|
|
<code>/home/.htaccess</code>, <code>/home/web/.htaccess</code> und
|
|
<code>/home/web/dir/.htaccess</code> der Reihe nach an.</li>
|
|
</ul>
|
|
|
|
<p>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</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory ~ abc$><br />
|
|
<span class="indent">
|
|
# ... hier die Direktiven ...<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<p>der Abschnitt mit dem regulären Ausdruck nicht
|
|
berücksichtigt, bis alle normalen
|
|
<code class="directive"><Directory></code>-Abschnitte und
|
|
<code>.htaccess</code>-Dateien angewendet wurden. Dann erst wird
|
|
der reguläre Ausdruck mit <code>/home/abc/public_html/abc</code>
|
|
abgeglichen und der entsprechende <code class="directive"><Directory></code>-Abschnitt angewendet.</p>
|
|
|
|
<p><strong>Beachten Sie bitte, dass der vom Apache voreingestellte
|
|
Zugriff für <code><Directory /></code>
|
|
<code>Allow from All</code> 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</strong></p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory /><br />
|
|
<span class="indent">
|
|
Order Deny,Allow<br />
|
|
Deny from All<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<p><strong>ändern und anschließend für
|
|
Verzeichnisse überschreiben, die Sie verfügbar machen
|
|
<em>wollen</em>. Für weitere Einzelheiten lesen Sie bitte
|
|
die Seite zu den <a href="../misc/security_tips.html">Sicherheitshinweisen</a>.</strong></p>
|
|
|
|
<p>Die Verzeichnisabschnitte erscheinen in der Datei
|
|
<code>httpd.conf</code>. <code class="directive"><Directory></code>-Direktiven dürfen nicht
|
|
ineinander verschachtelt werden oder innerhalb von <code class="directive"><a href="#limit"><Limit></a></code>- oder <code class="directive"><a href="#limitexcept"><LimitExcept></a></code>-Abschnitten auftauchen.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../sections.html">Wie die Abschnitte <Directory>,
|
|
<Location> und <Files> arbeiten</a> für eine
|
|
Erläuterung, wie diese verschiedenen Abschnitte miteinander
|
|
kombiniert werden, wenn eine Anfrage empfangen wird</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="DirectoryMatch" id="DirectoryMatch"><DirectoryMatch></a>-<a name="directorymatch" id="directorymatch">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Umschließt eine Gruppe von Direktiven, die auf
|
|
Verzeichnisse des Dateisystems und ihre Unterverzeichnisse abgebildet
|
|
werden, welche auf einen regulären Ausdruck passen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><DirectoryMatch <var>regex</var>>
|
|
... </DirectoryMatch></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p><code class="directive"><DirectoryMatch></code> und
|
|
<code></DirectoryMatch></code> werden dazu verwendet, eine
|
|
Gruppe von Direktiven zusammenzufassen, die nur für das
|
|
genannte Verzeichnis und dessen Unterverzeichnisse gelten, genauso
|
|
wie bei <code class="directive"><a href="#directory"><Directory></a></code>.
|
|
Als Argument dient jedoch ein regulärer Ausdruck.
|
|
Beispielsweise würde</p>
|
|
|
|
<div class="example"><p><code>
|
|
<DirectoryMatch "^/www/.*/[0-9]{3}">
|
|
</code></p></div>
|
|
|
|
<p>auf Verzeichnisse in <code>/www/</code> passen, die aus drei
|
|
Zeichen bestehen.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#directory"><Directory></a></code>
|
|
für eine Beschreibung, wie reguläre Ausdrücke mit
|
|
normalen <code class="directive"><Directory></code>-Anweisungen
|
|
vermischt werden.</li>
|
|
<li><a href="../sections.html">Wie die Abschnitte <Directory>,
|
|
<Location> und <Files> arbeiten</a> für eine
|
|
Erläuterung, wie diese verschiedenen Abschnitte miteinander
|
|
kombiniert werden, wenn eine Anfrage empfangen wird</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="DocumentRoot" id="DocumentRoot">DocumentRoot</a>-<a name="documentroot" id="documentroot">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Verzeichnis, welches den Haupt-Dokumentenbaum bildet, der im
|
|
Web sichtbar ist.</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>DocumentRoot <var>Verzeichnis</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>DocumentRoot /usr/local/apache/htdocs</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive setzt das Verzeichnis, von dem aus
|
|
<code class="program"><a href="../programs/httpd.html">httpd</a></code> Dateien ausliefert. Sofern nicht eine Direktive
|
|
wie <code class="directive"><a href="../mod/mod_alias.html#alias">Alias</a></code> greift, hängt
|
|
der Server Pfade aus der angeforderten URL an das Wurzelverzeichnis
|
|
an, um den Pfad zum Dokument zu bilden. Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
DocumentRoot /usr/web
|
|
</code></p></div>
|
|
|
|
<p>Damit bezieht sich ein Zugriff auf
|
|
<code>http://www.my.host.com/index.html</code> auf
|
|
<code>/usr/web/index.html</code>. Wenn das <var>Verzeichnis</var> nicht
|
|
absolut angegeben ist, wird es relativ zu <code class="directive"><a href="#serverroot">ServerRoot</a></code> betrachtet.</p>
|
|
|
|
<p><code class="directive">DocumentRoot</code> sollte ohne einen
|
|
Schrägstrich am Ende angegeben werden.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../urlmapping.html">URLs auf das Dateisystem
|
|
abbilden</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="EnableMMAP" id="EnableMMAP">EnableMMAP</a>-<a name="enablemmap" id="enablemmap">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Verwende Memory-Mapping, um Dateien während der
|
|
Auslieferung zu lesen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>EnableMMAP On|Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>EnableMMAP On</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive steuert, ob <code class="program"><a href="../programs/httpd.html">httpd</a></code> Memory-Mapping
|
|
verwenden darf, wenn er während der Auslieferung den Inhalt einer
|
|
Datei lesen muss. Wenn die Bearbeitung einer Anfrage es erfordert,
|
|
auf die Daten in einer Datei zuzugreifen -- zum Beispiel bei der
|
|
Auslieferung einer mittels <code class="module"><a href="../mod/mod_include.html">mod_include</a></code> serverseitig
|
|
analysierten Datei --, dann verwendet der Apache standardmäßig
|
|
Memory-Mapping für diese Datei, sofern das Betriebssystem es
|
|
unterstützt.</p>
|
|
|
|
<p>Memory-Mapping bedeutet zuweilen eine Performanceverbesserung.
|
|
In einigen Umgebungen ist es jedoch besser, Memory-Mapping zu
|
|
deaktivieren, um Problemen während des Betriebs vorzubeugen:</p>
|
|
|
|
<ul>
|
|
<li>Bei einigen Multiprozessorsystemen kann Memory-Mapping die
|
|
Performance von <code class="program"><a href="../programs/httpd.html">httpd</a></code> reduzieren.</li>
|
|
<li>Bei einem per NFS eingebundenen <code class="directive"><a href="#documentroot">DocumentRoot</a></code> kann <code class="program"><a href="../programs/httpd.html">httpd</a></code> mit
|
|
einem Speicherzugriffsfehler <span class="transnote">(<em>Anm.d.Ü.:</em> ein so genannter "segmentation
|
|
fault")</span> abstürzen, wenn eine Datei gelöscht oder
|
|
gekürzt wird, während <code class="program"><a href="../programs/httpd.html">httpd</a></code> sie im Speicher
|
|
abbildet.</li>
|
|
</ul>
|
|
|
|
<p>Bei Serverkonfigurationen, die für dieses Problem
|
|
anfällig sind, sollten Sie das Memory-Mapping für
|
|
auszuliefernde Dateien deaktivieren, indem Sie schreiben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
EnableMMAP Off
|
|
</code></p></div>
|
|
|
|
<p>Bei per NFS eingebundenen Dateien kann diese Funktion
|
|
explizit für die störenden Dateien deaktiviert werden,
|
|
indem Sie angeben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory "/pfad-zu-den-nfs-dateien">
|
|
<span class="indent">
|
|
EnableMMAP Off
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="EnableSendfile" id="EnableSendfile">EnableSendfile</a>-<a name="enablesendfile" id="enablesendfile">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Verwende die sendfile-Unterstützung des Kernels, um
|
|
Dateien an den Client auszuliefern</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>EnableSendfile On|Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>EnableSendfile On</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Verfügbar ab Apache Version 2.0.44</td></tr>
|
|
</table>
|
|
<p>Die Direktive steuert, ob <code class="program"><a href="../programs/httpd.html">httpd</a></code> die
|
|
sendfile-Unterstützung des Kernels verwenden kann, um
|
|
Dateiinhalte an den Client zu übermitteln. Wenn die Bearbeitung
|
|
einer Anfrage keinen Zugriff auf die Daten in der Datei erfordert --
|
|
zum Beispiel bei der Auslieferung einer statischen Datei -- und das
|
|
Betriebssystem es unterstützt, verwendet der Apache
|
|
standardmäßig sendfile, um den Dateiinhalt zu
|
|
übertragen, ohne die Datei jemals zu lesen.</p>
|
|
|
|
<p>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:</p>
|
|
|
|
<ul>
|
|
<li>Einige Plattformen besitzen u.U. eine fehlerhafte
|
|
sendfile-Unterstützung, die das Erstellungssystem nicht erkennt,
|
|
insbesondere wenn die Binärdateien auf einem anderen Rechner erstellt
|
|
und auf eine solche Maschine mit fehlerhafter sendfile-Unterstützung
|
|
übertragen wurden.</li>
|
|
<li>Bei einem über das Netzwerk eingebundenen <code class="directive"><a href="#documentroot">DocumentRoot</a></code> (z.B. NFS oder SMB) ist der
|
|
Kernel möglicherweise nicht in der Lage, die Netzwerkdatei
|
|
über seinen eigenen Cache zu bedienen.</li>
|
|
<li>Unter Linux löst die Verwendung von <code>sendfile</code>
|
|
in Verbindung mit bestimmten Netzwerkkarten und IPv6
|
|
TCP-Checksummenfehler aus.</li>
|
|
</ul>
|
|
|
|
<p>Bei Serverkonfigurationen, die für dieses Problam
|
|
anfällig sind, sollten die diese Funktion deaktivieren, indem
|
|
Sie schreiben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
EnableSendfile Off
|
|
</code></p></div>
|
|
|
|
<p>Bei per NFS oder SMB eingebundenen Dateien kann diese Funktion
|
|
explizit für die störenden Dateien deaktiviert werden, indem
|
|
Sie angeben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory "/pfad-zu-den-nfs-dateien">
|
|
<span class="indent">
|
|
EnableSendfile Off
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ErrorDocument" id="ErrorDocument">ErrorDocument</a>-<a name="errordocument" id="errordocument">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Das, was der Server im Fehlerfall an den Client
|
|
zurückgibt</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ErrorDocument <var>Fehlercode</var> <var>Dokument</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Die Syntax der Anführungszeichen bei Textnachrichten hat
|
|
sich im Apache 2.0 geändert</td></tr>
|
|
</table>
|
|
<p>Im Falle eines Problems oder Fehlers kann der Apache
|
|
konfiguriert werden, eine der vier Aktionen auszuführen:</p>
|
|
|
|
<ol>
|
|
<li>Ausgabe einer einfachen, hartkodierten Fehlermeldung</li>
|
|
|
|
<li>Ausgabe einer angepassten Meldung</li>
|
|
|
|
<li>Umleitung zu einem lokalen <var>URL-Pfad</var> der das
|
|
Problem bzw. den Fehler behandelt</li>
|
|
|
|
<li>Umleitung zu einer externen <var>URL</var>, die das Problem
|
|
bzw. den Fehler behandelt</li>
|
|
</ol>
|
|
|
|
<p>Die erste Option ist Voreinstellung, während die Optionen
|
|
2 bis 4 über die Direktive <code class="directive">ErrorDocument</code>
|
|
eingestellt werden, welcher der HTTP-Statuscode und eine
|
|
URL oder Nachricht folgen. Abhängig vom Problem bzw. Fehler bietet
|
|
der Apache manchmal zusätzliche Informationen an.</p>
|
|
|
|
<p>URLs können bei lokalen Webpfaden mit einem Schrägstrich
|
|
(/) beginnen (relativ zum <code class="directive"><a href="#documentroot">DocumentRoot</a></code>-Verzeichnis) oder eine vollständige URL
|
|
bilden, die der Client auflösen kann. Alternativ kann eine
|
|
Nachricht für die Anzeige im Browser angeboten werden. Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
ErrorDocument 500 http://foo.example.com/cgi-bin/tester<br />
|
|
ErrorDocument 404 /cgi-bin/falsche_urls.pl<br />
|
|
ErrorDocument 401 /info_zur_anmeldung.html<br />
|
|
ErrorDocument 403 "Der Zugriff ist nicht erlaubt."
|
|
</code></p></div>
|
|
|
|
<p>Außerdem kann der spezielle Wert <code>default</code> angegeben
|
|
werden, um die schlichte, hartkodierte Nachricht des Apache zu verwenden.
|
|
Es wird normalerweise nicht benötigt, doch <code>default</code>
|
|
stellt die einfach, im Apache hartkodierte Meldung in Konfigurationen
|
|
wieder her, die ansonsten von einem existierenden <span class="transnote">(<em>Anm.d.Ü.:</em> zuvor
|
|
konfigurierten)</span> <code class="directive">ErrorDocument</code> erben
|
|
würden.</p>
|
|
|
|
<div class="example"><p><code>
|
|
ErrorDocument 404 /cgi-bin/bad_urls.pl<br /><br />
|
|
<Directory /web/docs><br />
|
|
<span class="indent">
|
|
ErrorDocument 404 default<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<p>Wenn Sie eine <code class="directive">ErrorDocument</code>-Anweisung
|
|
angeben, die auf eine entfernte URL weist (d.h. irgendetwas mit der
|
|
Methode <code>http</code> 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
|
|
<code>ErrorDocument 401</code> 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. <strong>Deshalb müssen Sie sich auf ein lokales
|
|
Dokument beziehen, wenn Sie eine Anweisung <code>ErrorDocument
|
|
401</code> verwenden.</strong></p>
|
|
|
|
<p>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 <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807">Q294807</a> in der Microsoft Knowledgebase verfügbar.</p>
|
|
|
|
<p>Obwohl die meisten Fehlermeldungen überschrieben werden
|
|
können, werden unter bestimmten Umständen die internen
|
|
Meldungen ungeachtet der Einstellung der <code class="directive"><a href="#errordocument">ErrorDocument</a></code>-Direktive verwendet. Insbesondere bei
|
|
einer fehlerhaften Anfrage werden der normale Bearbeitungsprozess sofort
|
|
beendet und die interne Meldung zurückgegeben. Das ist notwendig, um
|
|
Sicherheitsprobleme zu vermeiden, die auf Grund fehlerhafter Anfragen
|
|
entstehen.</p>
|
|
|
|
<p>In Versionen vor 2.0 wurden Meldungen durch ein einzelnes
|
|
vorangestelltes Anführungszeichen (") erkannt.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../custom-error.html">Dokumentation zu individuellen
|
|
Fehlermeldungen</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ErrorLog" id="ErrorLog">ErrorLog</a>-<a name="errorlog" id="errorlog">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Ablageort, an dem der Server Fehler protokolliert</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code> ErrorLog <var>Dateiname</var>|syslog[:<var>facility</var>]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>ErrorLog logs/error_log (Unix) ErrorLog logs/error.log (Windows and
|
|
OS/2)</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">ErrorLog</code> bestimmt den Namen
|
|
der Datei, in welcher der Server alle auftretenden Fehler protokolliert.
|
|
Wenn <var>Dateiname</var> nicht absolut ist, wird er relativ zu <code class="directive"><a href="#serverroot">ServerRoot</a></code> betrachtet.</p>
|
|
|
|
<div class="example"><h3>Beispiel</h3><p><code>
|
|
ErrorLog /var/log/httpd/error_log
|
|
</code></p></div>
|
|
|
|
<p>Wenn der <var>Dateiname</var> 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.</p>
|
|
|
|
<div class="example"><h3>Beispiel</h3><p><code>
|
|
ErrorLog "|/usr/local/bin/httpd_errors"
|
|
</code></p></div>
|
|
|
|
<p>Die Verwendung von <code>syslog</code> anstelle eines Dateinamens
|
|
aktiviert die Protokollierung mittels syslogd(8), sofern das System
|
|
es unterstützt. Als Voreinstellung wird der syslog-Typ (syslog
|
|
facility) <code>local7</code> verwendet, Sie können dies jedoch
|
|
auch überschreiben, indem Sie die Syntax
|
|
<code>syslog:<var>facility</var></code> verwenden, wobei
|
|
<var>facility</var> einer der Namen sein kann, die üblicherweise
|
|
in syslog(1) dokumentiert sind.</p>
|
|
|
|
<div class="example"><h3>Beispiel</h3><p><code>
|
|
ErrorLog syslog:user
|
|
</code></p></div>
|
|
|
|
<p>SICHERHEITSHINWEIS: Lesen Sie das Dokument <a href="../misc/security_tips.html#serverroot">Sicherheitshinweise</a>
|
|
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.</p>
|
|
|
|
<div class="warning"><h3>Anmerkung</h3>
|
|
<p>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.</p>
|
|
</div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#loglevel">LogLevel</a></code></li>
|
|
<li><a href="../logs.html">Apache-Log-Dateien</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="FileETag" id="FileETag">FileETag</a>-<a name="fileetag" id="fileetag">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Dateiattribute, die zur Erstellung des HTTP-Response-Headers
|
|
ETag verwendet werden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>FileETag <var>Komponente</var> ...</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>FileETag INode MTime Size</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Wenn dem Dokument eine Datei zugrundeliegt, bestimmt die Direktive
|
|
<code class="directive">FileETag</code> die Dateiattribute, die zur Erstellung
|
|
des HTTP-Response-Headers <code>ETag</code> (Entity-Tag) verwendet
|
|
werden. (Der Wert von <code>ETag</code> wird bei der Cache-Verwaltung
|
|
zur Einsparung von Netzwerk-Bandbreite benutzt.) Im Apache 1.3.22 und
|
|
früher wurde der <code>ETag</code>-Wert <em>stets</em> aus
|
|
der I-Node, der Größe und dem Datum der letzten
|
|
Änderung (mtime) der Datei gebildet. Die Direktive
|
|
<code class="directive">FileETag</code> erlaubt es Ihnen, zu bestimmen,
|
|
welche dieser Eigenschaften -- falls überhaupt -- verwendet
|
|
werden sollen. Die gültigen Schlüsselworte lauten:</p>
|
|
|
|
<dl>
|
|
<dt><strong>INode</strong></dt>
|
|
<dd>Die I-Node-Nummer wird in die Berechnung mit einbezogen</dd>
|
|
<dt><strong>MTime</strong></dt>
|
|
<dd>Datum und Uhrzeit der letzten Änderung werden mit einbezogen</dd>
|
|
<dt><strong>Size</strong></dt>
|
|
<dd>Die Anzahl der Bytes in der Datei wird mit einbezogen</dd>
|
|
<dt><strong>All</strong></dt>
|
|
<dd>Alle verfügbaren Angaben werden verwendet. Die ist
|
|
gleichbedeutend mit:
|
|
<div class="example"><p><code>FileETag INode MTime Size</code></p></div></dd>
|
|
<dt><strong>None</strong></dt>
|
|
<dd>Es wird keine <code>ETag</code>-Angabe in die Antwort eingefügt,
|
|
wenn dem Dokument eine Datei zugrundeliegt.</dd>
|
|
</dl>
|
|
|
|
<p>Den Schlüsselwörtern <code>INode</code>, <code>MTime</code>
|
|
und <code>Size</code> kann entweder ein <code>+</code> oder ein
|
|
<code>-</code> 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.</p>
|
|
|
|
<p>Wenn die Konfiguration für ein Verzeichnis
|
|
<code>FileETag INode MTime Size</code> enthält
|
|
und die eines Unterverzeichnisses <code>FileETag -INode</code>,
|
|
dann ist die Einstellung für das Unterverzeichnis (die an
|
|
jedes Unter-Unterverzeichnis weitervererbt wird, welches dies nicht
|
|
überschreibt) äquivalent mit
|
|
<code>FileETag MTime Size</code>.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="Files" id="Files"><Files></a>-<a name="files" id="files">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Enthält Direktiven, die sich nur auf passende Dateinamen
|
|
beziehen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><Files <var>Dateiname</var>> ... </Files></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive"><Files></code>
|
|
begrenzt die Reichweite der enthaltenen Anweisungen auf Dateinamen.
|
|
Sie ist vergleichbar mit den Direktiven <code class="directive"><a href="#directory"><Directory></a></code> und <code class="directive"><a href="#location"><Location></a></code>. Sie muss eine
|
|
passende <code></Files></code>-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. <code class="directive"><Files></code>-Container werden, nachdem die
|
|
<code class="directive"><a href="#directory"><Directory></a></code>-Container
|
|
und <code>.htaccess</code>-Dateien gelesen sind, jedoch vor den
|
|
<code class="directive"><a href="#location"><Location></a></code>-Containern,
|
|
in der Reihenfolge ihres Auftretens ausgeführt. Beachten Sie, dass
|
|
<code class="directive"><Files></code>-Anweisungen innerhalb von
|
|
<code class="directive"><a href="#directory"><Directory></a></code>-Containern
|
|
auftreten können, um den Teil des Dateisystems einzuschränken,
|
|
den sie betreffen.</p>
|
|
|
|
<p>Das Argument <var>Dateiname</var> kann einen Dateinamen oder eine
|
|
Zeichenkette mit Platzhaltern enthalten, wobei <code>?</code> auf ein
|
|
einzelnes Zeichen passt und <code>*</code> auf eine beliebige Folge von
|
|
Zeichen. Erweiterte reguläre Ausdrücke können ebenfalls
|
|
verwendet werden, indem das Zeichen <code>~</code> hinzugefügt wird.
|
|
Beispielsweise würde</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Files ~ "\.(gif|jpe?g|png)$">
|
|
</code></p></div>
|
|
|
|
<p>auf die gebräuchlichsten Grafikformate im Internet passen.
|
|
<code class="directive"><a href="#filesmatch"><FilesMatch></a></code> wird
|
|
jedoch bevorzugt.</p>
|
|
|
|
<p>Beachten Sie bitte, dass die <code class="directive"><Files></code>-Container anders als <code class="directive"><a href="#directory"><Directory></a></code>- und <code class="directive"><a href="#location"><Location></a></code>-Container innerhalb
|
|
von <code>.htaccess</code>-Dateien verwendet werden können.
|
|
Dies erlaubt den Anwendern auf Dateiebene die Kontrolle über ihre
|
|
eigenen Dateien.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../sections.html">Wie die Abschnitte <Directory>,
|
|
<Location> und <Files> arbeiten</a> für eine
|
|
Erläuterung, wie diese verschiedenen Abschnitte miteinander
|
|
kombiniert werden, wenn eine Anfrage empfangen wird</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="FilesMatch" id="FilesMatch"><FilesMatch></a>-<a name="filesmatch" id="filesmatch">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Enthält Direktiven, die für Dateinamen gelten, die
|
|
auf einen regulären Ausdruck passen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><FilesMatch <var>regex</var>> ... </FilesMatch></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive"><FilesMatch></code>
|
|
begrenzt wie die Direktive <code class="directive"><a href="#files"><Files></a></code> die enthaltenen Anweisungen auf
|
|
Dateinamen. Sie akzeptiert jedoch reguläre Ausdrücke.
|
|
Beispielsweise würde</p>
|
|
|
|
<div class="example"><p><code>
|
|
<FilesMatch "\.(gif|jpe?g|png)$">
|
|
</code></p></div>
|
|
|
|
<p>auf die gebräuchlichsten Grafikformate im Internet passen.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../sections.html">Wie die Abschnitte <Directory>,
|
|
<Location> und <Files> arbeiten</a> für eine
|
|
Erläuterung, wie diese verschiedenen Abschnitte miteinander
|
|
kombiniert werden, wenn eine Anfrage empfangen wird</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ForceType" id="ForceType">ForceType</a>-<a name="forcetype" id="forcetype">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Erzwingt die Auslieferung aller passendenden Dateien mit dem
|
|
angegebenen MIME-Content-Type</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ForceType <var>MIME-Type</var>|None</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Wurde im Apache 2.0 in den Core verschoben</td></tr>
|
|
</table>
|
|
<p>Wenn sie innerhalb einer <code>.htaccess</code>-Datei, eines
|
|
<code class="directive"><a href="#directory"><Directory></a></code>-,
|
|
<code class="directive"><a href="#location"><Location></a></code>-
|
|
<code class="directive"><a href="#files"><Files></a></code>-Containers
|
|
angegeben wird, erzwingt die Direktive die Auslieferung aller
|
|
entsprechenden Dateien mit dem Content-Type, der durch
|
|
<var>MIME-Type</var> definiert wurde. Wenn Sie zum Beispiel ein
|
|
Verzeichnis voller GIF-Dateien haben, die Sie nicht alle durch
|
|
<code>.gif</code> kennzeichnen wollen, können Sie angeben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
ForceType image/gif
|
|
</code></p></div>
|
|
|
|
<p>Beachten Sie bitte, dass die Direktive anders als <code class="directive"><a href="#defaulttype">DefaultType</a></code> alle MIME-Type-Zuordnungen
|
|
überschreibt, einschließlich Dateiendungen, die einen
|
|
Medientyp bezeichnen könnten.</p>
|
|
|
|
<p>Sie können jede <code class="directive">ForceType</code>-Angabe
|
|
durch die Verwendung des Wertes <code>None</code> überschreiben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
# erzwinge image/gif für alle Dateien:<br />
|
|
<Location /images><br />
|
|
<span class="indent">
|
|
ForceType image/gif<br />
|
|
</span>
|
|
</Location><br />
|
|
<br />
|
|
# hier jedoch normale MIME-Type-Zuordnungen:<br />
|
|
<Location /images/mixed><br />
|
|
<span class="indent">
|
|
ForceType None<br />
|
|
</span>
|
|
</Location>
|
|
</code></p></div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="HostnameLookups" id="HostnameLookups">HostnameLookups</a>-<a name="hostnamelookups" id="hostnamelookups">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Aktiviert DNS-Lookups auf Client-IP-Adressen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>HostnameLookups On|Off|Double</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>HostnameLookups Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Diese Direktive aktiviert die DNS-Abfrage <span class="transnote">(<em>Anm.d.Ü.:</em> ein sogenannter
|
|
DNS-Lookup)</span>, so dass Hostnamen protokolliert (und in
|
|
<code>REMOTE_HOST</code> an CGIs/SSIs übergeben) werden könnnen.
|
|
Der Wert <code>Double</code> 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 <code>PARANOID</code>
|
|
genannt.)</p>
|
|
|
|
<p>Unabhängig von der Einstellung wird ein Double-Reverse-Lookup
|
|
durchgeführt, wenn <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code> zur
|
|
Zugriffskontrolle per Hostnamen eingesetzt wird. Dies ist aus
|
|
Sicherheitsgründen notwendig. Beachten Sie, dass das Ergebnis dieses
|
|
Double-Reverse-Lookups nicht generell verfügbar ist, solange Sie
|
|
nicht <code>HostnameLookups Double</code> setzen. Wenn beispielsweise
|
|
nur <code>HostnameLookups On</code> 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 <code>REMOTE_HOST</code> übergeben,
|
|
egal ob das Doble-Reverse-Lookup fehlschlug oder nicht.</p>
|
|
|
|
<p>Die Voreinstellung ist <code>Off</code>, 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
|
|
<code>Off</code>lassen. Das Hilfsprogramm <code class="program"><a href="../programs/logresolve.html">logresolve</a></code>, das standardmäßig in das
|
|
Unterverzeichnis <code>bin</code> Ihres Installationsverzeichnisses
|
|
kompiliert wird, kann dazu verwendet werden, um offline Hostnamen von
|
|
protokollierten IP-Adressen nachzuschlagen.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="IfDefine" id="IfDefine"><IfDefine></a>-<a name="ifdefine" id="ifdefine">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Schließt Direktiven ein, die nur ausgeführt werden,
|
|
wenn eine Testbedingung beim Start wahr ist</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><IfDefine [!]<var>Parametername</var>> ...
|
|
</IfDefine></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Der Container <code><IfDefine <var>Test</var>>...</IfDefine>
|
|
</code> wird dazu verwendet, Direktiven als bedingt zu kennzeichnen.
|
|
Die Direktiven innerhalb eines <code class="directive"><IfDefine></code>-Abschnittes werden nur ausgeführt,
|
|
wenn <var>Test</var> wahr ist. Ist <var>Test</var> falsch, wird alles
|
|
zwischen der Start- und Endemarkierung ignoriert.</p>
|
|
|
|
<p>In der <code class="directive"><IfDefine></code>-Anweisung kann
|
|
<var>Test</var> eine von zwei Formen annehmen:</p>
|
|
|
|
<ul>
|
|
<li><var>Parametername</var></li>
|
|
|
|
<li><code>!</code><var>Parametername</var></li>
|
|
</ul>
|
|
|
|
<p>Im ersten Fall werden die Direktiven zwischen der Start- und
|
|
Endemarkierung nur ausgeführt, wenn der Parameter namens
|
|
<var>Parametername</var> definiert ist. Die zweite Form kehrt den
|
|
Test um und führt die Direktiven nur dann aus, wenn
|
|
<var>Parametername</var> <strong>nicht</strong> definiert ist.</p>
|
|
|
|
<p>Das Argument <var>Parametername</var> ist ein sogenanntes
|
|
"Define", das beim beim Start des Servers in der
|
|
<code class="program"><a href="../programs/httpd.html">httpd</a></code>-Befehlszeile durch
|
|
<code>-D<var>Parameter</var></code> angegeben wird.</p>
|
|
|
|
<p><code class="directive"><IfDefine></code>-Container können
|
|
ineinander verschachtelt werden, um einfache Multi-Parameter-Tests
|
|
zu implementieren. Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
httpd -DReverseProxy ...<br />
|
|
<br />
|
|
# httpd.conf<br />
|
|
<IfDefine ReverseProxy><br />
|
|
<span class="indent">
|
|
LoadModule rewrite_module modules/mod_rewrite.so<br />
|
|
LoadModule proxy_module modules/libproxy.so<br />
|
|
</span>
|
|
</IfDefine>
|
|
</code></p></div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="IfModule" id="IfModule"><IfModule></a>-<a name="ifmodule" id="ifmodule">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Schließt Direktiven ein, die abhängig vom
|
|
Vorhandensein oder Fehlen eines speziellen Moduls ausgeführt
|
|
werden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><IfModule [!]<var>Modulname</var>|<var>Modulbezeichner</var>>
|
|
... </IfModule></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Modulbezeichner sind ab Version 2.1
|
|
verfügbar.</td></tr>
|
|
</table>
|
|
<p>Der Container <code><IfModule
|
|
<var>Test</var>>...</IfModule></code> wird dazu verwendet,
|
|
Direktiven als abhängig von dem Vorhandensein eines speziellen
|
|
Moduls zu kennzeichnen. Die Direktiven innerhalb eines <code class="directive"><IfModule></code>-Abschnitts werden nur
|
|
ausgeführt, wenn <var>Test</var> wahr ist. Ist <var>Test</var>
|
|
falsch, wird alles zwischen der Start- und Endemarkierung ignoriert.</p>
|
|
|
|
<p>In der <code class="directive"><IfModule></code>-Anweisung
|
|
kann <var>Test</var> eine von zwei Formen annehmen:</p>
|
|
|
|
<ul>
|
|
<li><var>Modul</var></li>
|
|
|
|
<li><code>!</code><var>Modul</var></li>
|
|
</ul>
|
|
|
|
<p>Im ersten Fall werden die Direktiven zwischen der Start- und
|
|
Endemarkierung nur ausgeführt, das Modul namens
|
|
<var>Modul</var> im Apache enthalten ist -- entweder einkompiliert
|
|
oder mittels <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code>
|
|
dynamisch geladen. Die zweite Form dreht den Test um und führt die
|
|
Direktiven nur aus, wenn <var>Modul</var> <strong>nicht</strong>
|
|
enthalten ist.</p>
|
|
|
|
<p>Das Argument <var>Modul</var> kann entweder der Modulbezeichner oder
|
|
der Dateiname des Moduls zum Zeitpunkt seiner Kompilierung sein.
|
|
<code>rewrite_module</code> beispielsweise ist der Bezeichner und
|
|
<code>mod_rewrite.c</code> ist der Dateiname. Wenn ein Modul aus mehreren
|
|
Quelltext-Dateien besteht, verwenden Sie den Namen der Datei, welche die
|
|
Zeichenfolge <code>STANDARD20_MODULE_STUFF</code> enthält.</p>
|
|
|
|
<p><code class="directive"><IfModule></code>-Container können
|
|
inneinander verschachtelt werden, um einfache Multi-Modul-Tests
|
|
durchzuführen.</p>
|
|
|
|
<p>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 <code class="directive"><IfModule></code>-Containern unterzubringen.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="Include" id="Include">Include</a>-<a name="include" id="include">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Fügt andere Konfigurationsdateien innerhalb der
|
|
Server-Konfigurationsdatei ein</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Include <var>Dateiname</var>|<var>Verzeichnis</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Die Platzhalter-Suche ist verfügbar seit
|
|
2.0.41</td></tr>
|
|
</table>
|
|
<p>Die Direktive erlaubt das Einfügen anderer Konfigurationsdateien
|
|
in die Konfigurationsdatei des Servers.</p>
|
|
|
|
<p>Shell-typische (<code>fnmatch()</code>) Platzhlaterzeichen können
|
|
dazu verwendet werden, mehrere Dateien auf einmal in alphabetischer
|
|
Reihenfolge einzufügen. Wenn <code class="directive">Include</code>
|
|
darüber hinaus auf ein Verzeichnis anstatt auf eine Datei zeigt,
|
|
liest der Apache alle Dateien in diesem Verzeichnis und allen
|
|
Unterverzeichnissen ein. Das Einfügen ganzer Verzeichnisse ist
|
|
jedoch nicht empfehlenswert, da temporäre Dateien sehr leicht
|
|
versehentlich in einem Verzeichnis zurückgelassen werden, was
|
|
<code class="program"><a href="../programs/httpd.html">httpd</a></code> scheitern lassen kann.</p>
|
|
|
|
<p>Der angegebene Dateiname kann ein absoluter Pfad sein oder relativ zum
|
|
<code class="directive"><a href="#serverroot">ServerRoot</a></code>-Verzeichnis angegeben
|
|
werden.</p>
|
|
|
|
<p>Beispiele:</p>
|
|
|
|
<div class="example"><p><code>
|
|
Include /usr/local/apache2/conf/ssl.conf<br />
|
|
Include /usr/local/apache2/conf/vhosts/*.conf
|
|
</code></p></div>
|
|
|
|
<p>Oder Sie geben Pfade relativ zu Ihrem <code class="directive"><a href="#serverroot">ServerRoot</a></code>-Verzeichnis an:</p>
|
|
|
|
<div class="example"><p><code>
|
|
Include conf/ssl.conf<br />
|
|
Include conf/vhosts/*.conf
|
|
</code></p></div>
|
|
|
|
<p>Der Aufruf von <code>apachectl configtest</code> liefert eine Liste
|
|
der Dateien, die während des Konfigurations-Tests verarbeitet
|
|
werden:</p>
|
|
|
|
<div class="example"><p><code>
|
|
root@host# apachectl configtest<br />
|
|
Processing config file: /usr/local/apache2/conf/ssl.conf<br />
|
|
Processing config file: /usr/local/apache2/conf/vhosts/vhost1.conf<br />
|
|
Processing config file: /usr/local/apache2/conf/vhosts/vhost2.conf<br />
|
|
Syntax OK
|
|
</code></p></div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="program"><a href="../programs/apachectl.html">apachectl</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="KeepAlive" id="KeepAlive">KeepAlive</a>-<a name="keepalive" id="keepalive">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Aktiviert persistente HTTP-Verbindungen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>KeepAlive On|Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>KeepAlive On</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>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 <code>KeepAlive On</code>.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="KeepAliveTimeout" id="KeepAliveTimeout">KeepAliveTimeout</a>-<a name="keepalivetimeout" id="keepalivetimeout">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Zeitspanne, die der Server während persistenter Verbindungen
|
|
auf nachfolgende Anfragen wartet</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>KeepAliveTimeout <var>Sekunden</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>KeepAliveTimeout 5</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>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
|
|
<code class="directive"><a href="#timeout">Timeout</a></code> festgelegte Auszeit
|
|
angewendet.</p>
|
|
|
|
<p>Auf stark belasteten Servern kann ein hoher
|
|
<code class="directive">KeepAliveTimeout</code>-Wert zu Durchsatzminderungen
|
|
führen. Je höher die Auszeit angegeben ist, desto länger
|
|
ist der Apache damit beschäftigt, auf untätige Clients zu
|
|
warten.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="Limit" id="Limit"><Limit></a>-<a name="limit" id="limit">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Beschränkt die eingeschlossenen Zugriffskontrollen auf
|
|
bestimmte HTTP-Methoden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><Limit <var>Methode</var> [<var>Methode</var>] ... > ...
|
|
</Limit></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Zugriffskontrollen gelten normalerweise für <strong>alle</strong>
|
|
Zugriffsmethoden, was normalerweise auch das gewünschte Verhalten ist.
|
|
<strong>Im Allgemeinen sollten Zugriffskontrollen nicht in einen
|
|
<code class="directive"><Limit></code>-Container gepackt
|
|
werden.</strong></p>
|
|
|
|
<p>Der Sinn der Direktive <code class="directive"><Limit></code>
|
|
ist es, den Effekt der Zugriffskontrollen auf die angegebenen
|
|
HTTP-Methoden zu beschränken. Bei allen anderen Methoden haben
|
|
die in der <code class="directive"><Limit></code>-Gruppe
|
|
enthaltenen Zugriffsbeschränkungen <strong>keine Wirkung</strong>.
|
|
Im folgenden Beispiel gilt die Zugriffskontrolle nur für die
|
|
Methoden <code>POST</code>, <code>PUT</code> und <code>DELETE</code>.
|
|
Alle anderen Methoden bleiben ungeschützt:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Limit POST PUT DELETE><br />
|
|
<span class="indent">
|
|
Require valid-user<br />
|
|
</span>
|
|
</Limit>
|
|
</code></p></div>
|
|
|
|
<p>Sie können eine oder mehrere der folgenden Methoden angeben:
|
|
<code>GET</code>, <code>POST</code>, <code>PUT</code>, <code>DELETE</code>,
|
|
<code>CONNECT</code>, <code>OPTIONS</code>,
|
|
<code>PATCH</code>, <code>PROPFIND</code>, <code>PROPPATCH</code>,
|
|
<code>MKCOL</code>, <code>COPY</code>, <code>MOVE</code>,
|
|
<code>LOCK</code> und <code>UNLOCK</code>. <strong>Die Methodennamen
|
|
unterscheiden zwischen Groß- und Kleinschreibung.</strong> Wenn
|
|
<code>GET</code> verwendet wird, sind <code>HEAD</code>-Anfragen
|
|
ebenfalls eingeschränkt. Die <code>TRACE</code>-Methode kann nicht
|
|
limitiert werden.</p>
|
|
|
|
<div class="warning">
|
|
Wenn es um Zugriffsbeschränkungen geht, sollte
|
|
ein <code class="directive"><a href="#limitexcept"><LimitExcept></a></code>-Container sollte immmer einem <code class="directive"><a href="#limit"><Limit></a></code>-Container vorgezogen
|
|
werden, da <code class="directive"><a href="#limitexcept"><LimitExcept></a></code>
|
|
einen Schutz gegen beliebige Methoden bietet.
|
|
</div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LimitExcept" id="LimitExcept"><LimitExcept></a>-<a name="limitexcept" id="limitexcept">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Beschränkt Zugriffskontrollen auf alle HTTP-Methoden
|
|
außer den genannten</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><LimitExcept <var>Methode</var> [<var>Methode</var>] ... > ...
|
|
</LimitExcept></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p><code class="directive"><LimitExcept></code> und
|
|
<code></LimitExcept></code> werden dazu verwendet, eine Gruppe
|
|
von Anweisungen zur Zugriffskontrolle zusammenzufassen, die dann auf
|
|
jede HTTP-Methode angewendet werden, die <strong>nicht</strong>
|
|
als Argument angegeben ist. D.h. dies ist das Gegenteil des
|
|
<code class="directive"><a href="#limit"><Limit></a></code>-Containers
|
|
und kann zur Steuerung von Standard- und nicht-Standard-/unbekannten
|
|
Methoden verwendet werden. Für weitere Einzelheiten lesen Sie bitte
|
|
die Beschreibung zu <code class="directive"><a href="#limit"><Limit></a></code>.</p>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<LimitExcept POST GET><br />
|
|
<span class="indent">
|
|
Require valid-user<br />
|
|
</span>
|
|
</LimitExcept>
|
|
</code></p></div>
|
|
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LimitInternalRecursion" id="LimitInternalRecursion">LimitInternalRecursion</a>-<a name="limitinternalrecursion" id="limitinternalrecursion">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Bestimmt die maximale Anzahl interner Umleitungen und
|
|
verschachtelter Unteranfragen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>LimitInternalRecursion <var>Zahl</var> [<var>Zahl</var>]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>LimitInternalRecursion 10</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Verfügbar ab Apache 2.0.47</td></tr>
|
|
</table>
|
|
<p>Eine interne Umleitung erfolgt beispielsweise, wenn die Direktive
|
|
<code class="directive"><a href="../mod/mod_actions.html#action">Action</a></code> verwendet wird, welche
|
|
die Originalanfrage intern zu einem CGI-Skript weiterleitet. Eine
|
|
Unteranfrage <span class="transnote">(<em>Anm.d.Ü.:</em> engl. Subrequest)</span> ist ein Mechanismus des
|
|
Apache, um herauszufinden, was bei einer URI geschehen würde, wäre
|
|
sie angefordert worden. <code class="module"><a href="../mod/mod_dir.html">mod_dir</a></code> z.B. verwendet
|
|
Unteranfragen, um nach den Dateien zu suchen, die in der <code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>-Anweisung aufgeführt
|
|
sind.</p>
|
|
|
|
<p><code class="directive">LimitInternalRecursion</code> bewahrt den Server vor
|
|
einem Absturz, wenn er in eine Endlosschleife aus internen Umleitungen
|
|
oder Unteranfragen hineinläuft. Derartige Schleifen werden
|
|
gewöhnlich durch Fehlkonfiguration verursacht.</p>
|
|
|
|
<p>Die Direktive setzt zwei verschiedene Begrenzungen, welche je Anfrage
|
|
ausgewertet werden. Die erste <var>Zahl</var> bestimmt die maximale
|
|
Anzahl der Umleitungen, die aufeinander folgen dürfen. Die zweite
|
|
<var>Zahl</var> legt fest, wie tief Unteranfragen ineinander
|
|
verschachtelt werden dürfen. Wenn Sie lediglich eine <var>Zahl</var>
|
|
angeben, wird sie beiden Begrenzungen zugewiesen.</p>
|
|
|
|
<div class="example"><h3>Beispiel</h3><p><code>
|
|
LimitInternalRecursion 5
|
|
</code></p></div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LimitRequestBody" id="LimitRequestBody">LimitRequestBody</a>-<a name="limitrequestbody" id="limitrequestbody">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Begrenzt die Gesamtgröße des vom Client gesendeten
|
|
HTTP-Request-Body</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>LimitRequestBody <var>Bytes</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>LimitRequestBody 0</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive gibt die Anzahl der <var>Bytes</var> zwischen 0
|
|
(unbegrenzt) und 2147483647 (2GB) an, die im Request-Body (Datenteil der
|
|
Anfrage) erlaubt sind.</p>
|
|
|
|
<p>Die Direktive <code class="directive">LimitRequestBody</code> erlaubt es dem
|
|
Benutzer, die Größe des HTTP-Request-Bodys in dem Kontext zu
|
|
begrenzen, in dem die Anweisung angegeben ist (Server, pro Verzeichnis,
|
|
pro Datei oder pro Adresse). Wenn die Anfrage des Clients dieses Limit
|
|
überschreitet, gibt der Server einen Fehler zurück anstatt die
|
|
Anfrage zu bearbeiten. Die Größe des Datenteils einer Anfrage
|
|
kann sehr stark variieren, abhängig von der Art der Ressource und
|
|
den für diese Ressource erlaubten Methoden. CGI-Skripte verwenden
|
|
den Datenteil üblicherweise zum Empfang von Formulardaten. Wird
|
|
die <code>PUT</code>-Methode angewendet, dann muss der Wert mindestens
|
|
so groß sein wie irgendeine Darstellungsform, die der Server
|
|
für diese Ressource akzeptieren soll.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>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:</p>
|
|
|
|
<div class="example"><p><code>
|
|
LimitRequestBody 102400
|
|
</code></p></div>
|
|
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LimitRequestFields" id="LimitRequestFields">LimitRequestFields</a>-<a name="limitrequestfields" id="limitrequestfields">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Begrenzt die Anzahl der HTTP-Request-Header, die vom Client
|
|
entgegengenommen werden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>LimitRequestFields <var>Anzahl</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>LimitRequestFields 100</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p><var>Anzahl</var> ist ein Integer-Wert (eine positive Ganzzahl)
|
|
zwischen 0 (unbegrenzt) und 32767. Die Voreinstellung wird durch die
|
|
Konstante <code>DEFAULT_LIMIT_REQUEST_FIELDS</code> (<code>100</code>
|
|
bei der Auslieferung) zur Kompilierungszeit gesetzt.</p>
|
|
|
|
<p>Die Direktive <code class="directive">LimitRequestFields</code> erlaubt es
|
|
dem Serveradministrator, die maximale Anzahl der in einem HTTP-Request
|
|
erlaubten HTTP-Request-Header zu verändern. Für den Server
|
|
muss dieser Wert größer sein als die Anzahl der Headerzeilen,
|
|
die ein normaler Client senden könnte. Die Anzahl der Request-Header,
|
|
die ein gewöhnlicher Client verwendet, überschreitet selten 20
|
|
Zeilen. Allerdings kann dies zwischen den verschiedenen
|
|
Client-Ausführungen variieren, oft abhängig vom Ausmaß,
|
|
mit dem der Anwender die genaue Content-Negotiation-Unterstützung
|
|
seines Browsers konfiguriert hat. Optionale HTTP-Erweiterungen
|
|
äußern sich oft in Form von HTTP-Headern.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
LimitRequestFields 50
|
|
</code></p></div>
|
|
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LimitRequestFieldSize" id="LimitRequestFieldSize">LimitRequestFieldSize</a>-<a name="limitrequestfieldsize" id="limitrequestfieldsize">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Begrenzt die Länge des vom Client gesendeten
|
|
HTTP-Request-Headers</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>LimitRequestFieldsize <var>Bytes</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>LimitRequestFieldsize 8190</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive gibt die Anzahl der <var>Bytes</var> an, die in einem
|
|
HTTP-Header erlaubt sind.</p>
|
|
|
|
<p>Die Direktive <code class="directive">LimitRequestFieldsize</code> erlaubt es
|
|
dem Serveradministrator, die maximale Größe eines
|
|
HTTP-Request-Headers zu verringern oder erhöhen. Für den Server
|
|
muss der Wert groß genug sein, um eine beliebige Headerzeile einer
|
|
normalen Client-Anfrage vorzuhalten. Die Größe variiert stark
|
|
zwischen den verschiedenen Client-Ausführungen, oft abhängig vom
|
|
Ausmaß, mit dem der Anwender die genaue
|
|
Content-Negotiation-Unterstützung seines Browsers konfiguriert hat.
|
|
SPNEGO-Authentisierungs-Header können bis zu 12392 Bytes lang
|
|
sein.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
LimitRequestFieldSize 4094
|
|
</code></p></div>
|
|
|
|
<div class="note">Unter normalen Umständen sollte die Voreinstellung nicht
|
|
verändert werden.</div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LimitRequestLine" id="LimitRequestLine">LimitRequestLine</a>-<a name="limitrequestline" id="limitrequestline">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Begrenzt die Länge der vom Client entgegengenommenen
|
|
HTTP-Anfragezeile</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>LimitRequestLine <var>Bytes</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>LimitRequestLine 8190</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive legt die Anzahl der <var>Bytes</var> fest, die in der
|
|
HTTP-Anfragezeile erlaubt sind.</p>
|
|
|
|
<p>Die Direktive <code class="directive">LimitRequestLine</code> erlaubt es dem
|
|
Serveradministrator, die maximale Größe der
|
|
HTTP-Anfragezeile zu verringern oder erhöhen. Da
|
|
die Anfragezeile aus der HTTP-Methode, der URI und der Protokollversion
|
|
besteht, bedeutet die <code class="directive">LimitRequestLine</code>-Direktive
|
|
eine Beschränkung der Länge der für eine Anfrage an den
|
|
Server erlaubten Anfrage-URI. Für den Server muss der Wert groß
|
|
genug sein, um jeden seiner Ressourcennamen vorzuhalten,
|
|
einschließlich aller Informationen, die im Query-String einer
|
|
<code>GET</code>-Anfrage übergeben werden können.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
LimitRequestLine 4094
|
|
</code></p></div>
|
|
|
|
<div class="note">Unter normalen Umständen sollte die Voreinstellung nicht
|
|
verändert werden.</div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LimitXMLRequestBody" id="LimitXMLRequestBody">LimitXMLRequestBody</a>-<a name="limitxmlrequestbody" id="limitxmlrequestbody">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Begrenzt die Größe eines XML-basierten
|
|
Request-Bodys</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>LimitXMLRequestBody <var>Bytes</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>LimitXMLRequestBody 1000000</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Dies gibt die Grenze für die maximale Größe (in Bytes)
|
|
des XML-basierten Request-Bodys an. Der Wert <code>0</code> deaktiviert
|
|
diese Prüfung.</p>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
LimitXMLRequestBody 0
|
|
</code></p></div>
|
|
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="Location" id="Location"><Location></a>-<a name="location" id="location">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Wendet die enthaltenen Direktiven nur auf die entsprechenden
|
|
URLs an</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><Location
|
|
<var>URL-Pfad</var>|<var>URL</var>> ... </Location></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive"><Location></code>
|
|
begrenzt die Reichweite der enthaltenen Anweisungen auf URLs.
|
|
Sie ist der Direktive <code class="directive"><a href="#directory"><Directory></a></code> ähnlich und startet einen
|
|
Abschnitt, der mit der Anweisung <code></Location></code>
|
|
abgeschlossen wird. <code class="directive"><Location></code>-Container werden, nachdem die
|
|
<code class="directive"><a href="#directory"><Directory></a></code>-Container
|
|
und <code>.htaccess</code>-Dateien gelesen wurden, und nach den
|
|
<code class="directive"><a href="#files"><Files></a></code>-Containern, in
|
|
der Reihenfolge ausgeführt, in der sie in der Konfigurationsdatei
|
|
erscheinen.</p>
|
|
|
|
<p><code class="directive"><Location></code>-Abschnitte operieren
|
|
vollständig außerhalb des Dateisystems. Dies hat mehrere
|
|
Konsequenzen. An Wichtigsten, <code class="directive"><Location></code>-Anweisungen sollten nicht dafür
|
|
verwendet werden, den Zugriff zu Teilen des Dateisystems zu steuern. Da
|
|
mehrere unterschiedliche URLs auf die gleiche Stelle des Dateisystems
|
|
zeigen können, könnte eine solche Zugriffskontrolle u.U.
|
|
umgangen werden.</p>
|
|
|
|
<div class="note"><h3>Wann sollte<code class="directive"><Location></code> verwendet werden</h3>
|
|
|
|
<p>Verwenden Sie <code class="directive"><Location></code>, um
|
|
Anweisungen auf Inhalte anzuwenden, die außerhalb des Dateisystems
|
|
abgelegt sind. Benutzen Sie <code class="directive"><a href="#directory"><Directory></a></code> und <code class="directive"><a href="#files"><Files></a></code> für Inhalte, die
|
|
innerhalb des Dateisystems abgelegt sind. Eine Ausnahme bildet
|
|
<code><Location /></code>, welches ein einfacher Weg ist, um eine
|
|
Konfiguration auf den gesamten Server anzuwenden.</p>
|
|
</div>
|
|
|
|
<p>Für alle nicht-Proxy-Anfragen ist die entsprechende URL
|
|
ein URL-Pfad in der Form <code>/path/</code>. 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
|
|
<code>schema://servername/path</code>. Das Präfix muss angegeben
|
|
werden.</p>
|
|
|
|
<p>Die URL kann Platzhalter verwenden. In einer Zeichenfolge mit
|
|
Platzhaltern entspricht <code>?</code> einem einzelnen Zeichen und
|
|
<code>*</code>einer beliebigen Zeichenfolge.</p>
|
|
|
|
<p>Erweiterte reguläre Ausdrücke können ebenfalls
|
|
verwendet werden, indem das Zeichen <code>~</code> hinzugefügt
|
|
wird. Beispielsweise würde</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Location ~ "/(extra|special)/data">
|
|
</code></p></div>
|
|
|
|
<p>auf URLs passen, welche die Zeichenfolge <code>/extra/data</code>
|
|
oder <code>/special/data</code> enthalten. Die Direktive <code class="directive"><a href="#locationmatch"><LocationMatch></a></code> verhält sich
|
|
genauso wie <code class="directive"><Location></code> mit
|
|
regulären Ausdrücken.</p>
|
|
|
|
<p>Die Funktionalität von <code class="directive"><Location></code> ist insbesondere dann nützlich,
|
|
wenn sie mit der <code class="directive"><a href="#sethandler">SetHandler</a></code>-Direktive
|
|
kombiniert wird. Um zum Beispiel Statusabfragen zu aktivieren, sie aber
|
|
nur von Browsern aus <code>foo.com</code> zuzulassen, könnten Sie
|
|
schreiben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Location /status><br />
|
|
<span class="indent">
|
|
SetHandler server-status<br />
|
|
Order Deny,Allow<br />
|
|
Deny from all<br />
|
|
Allow from .foo.com<br />
|
|
</span>
|
|
</Location>
|
|
</code></p></div>
|
|
|
|
<div class="note"><h3>Anmerkung zu / (Schrägstrich, Slash)</h3>
|
|
<p>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
|
|
(<em>d.h.</em> <code>/home///foo</code> ist das gleiche wie
|
|
<code>/home/foo</code>). Im URL-Raum ist dies nicht notwendigerweise
|
|
genauso. Bei der Direktive <code class="directive"><a href="#locationmatch"><LocationMatch></a></code> und der <code class="directive"><Location></code>-Version mit regulären Ausdrücken
|
|
müssen Sie explizit mehrere Schrägstriche angeben, wenn Sie
|
|
genau dies beabsichtigen.</p>
|
|
|
|
<p>Beispielsweise würde <code><LocationMatch ^/abc></code>
|
|
auf die angeforderte URL <code>/abc</code> passen, nicht aber auf
|
|
<code>//abc</code>. Die Direktive <code class="directive"><Location></code> (ohne reguläre Ausdrücke) verhält
|
|
sich ähnlich, wenn sie für Proxy-Anfragen verwendet wird.
|
|
Wenn <code class="directive"><Location></code> (ohne
|
|
reguläre Ausdrücke) jedoch für nicht-Proxy-Anfragen
|
|
verwendet wird, werden stillscheigend mehrere Schrächstriche mit
|
|
mit einem einzigen Schrägstrich gleichgesetzt. Geben Sie
|
|
beispielsweise <code><Location /abc/def></code> an und die
|
|
Anfrage lautet auf <code>/abc//def</code>, dann greift die Anweisung.</p>
|
|
</div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../sections.html">Wie die Abschnitte <Directory>,
|
|
<Location> und <Files> arbeiten</a> für eine
|
|
Erläuterung, wie diese verschiedenen Abschnitte miteinander
|
|
kombiniert werden, wenn eine Anfrage empfangen wird</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LocationMatch" id="LocationMatch"><LocationMatch></a>-<a name="locationmatch" id="locationmatch">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Wendet die enthaltenen Direktiven nur auf URLs an, die auf
|
|
reguläre Ausdrücke passen</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><LocationMatch
|
|
<var>regex</var>> ... </LocationMatch></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive"><LocationMatch></code>
|
|
begrenzt die Reichweite der enthaltenen Anweisungen in der gleichen Weise
|
|
wie <code class="directive"><a href="#location"><Location></a></code> auf URLs.
|
|
Sie verwendet jedoch reguläre Ausdrücke als Argument anstelle
|
|
einer einfachen Zeichenkette. Beispielsweise würde</p>
|
|
|
|
<div class="example"><p><code>
|
|
<LocationMatch "/(extra|special)/data">
|
|
</code></p></div>
|
|
|
|
<p>auf URLs passen, welche die Zeichenfolge <code>/extra/data</code>
|
|
oder <code>/special/data</code> enthalten.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../sections.html">Wie die Abschnitte <Directory>,
|
|
<Location> und <Files> arbeiten</a> für eine
|
|
Erläuterung, wie diese verschiedenen Abschnitte miteinander
|
|
kombiniert werden, wenn eine Anfrage empfangen wird</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="LogLevel" id="LogLevel">LogLevel</a>-<a name="loglevel" id="loglevel">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Steuert die Ausführlichkeit des Fehlerprotokolls</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>LogLevel <var>Level</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>LogLevel warn</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p><code class="directive">LogLevel</code> stellt die Ausführlichkeit
|
|
der Nachrichten ein, die im Fehlerprotokoll aufgezeichnet werden (siehe
|
|
Direktive <code class="directive"><a href="#errorlog">ErrorLog</a></code>). Die folgenden,
|
|
nach absteigender Aussagekraft sortierten <var>Level</var> sind
|
|
verfügbar:</p>
|
|
|
|
<table class="bordered">
|
|
|
|
<tr>
|
|
<th><strong>Level</strong> </th>
|
|
|
|
<th><strong>Beschreibung</strong> </th>
|
|
|
|
<th><strong>Beispiel</strong> </th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><code>emerg</code> </td>
|
|
|
|
<td>Notfall - das System ist unbenutzbar.</td>
|
|
|
|
<td>"Child cannot open lock file. Exiting"
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> "Kindprozess kann die Lock-Datei nicht öffnen.
|
|
Beende Programm")</span></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><code>alert</code> </td>
|
|
|
|
<td>Maßnahmen müssen unverzüglich ergriffen
|
|
werden.</td>
|
|
|
|
<td>"getpwuid: couldn't determine user name from uid"
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> "getpwuid: kann keinen Benutzernamen aus der UID
|
|
ermitteln")</span></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><code>crit</code> </td>
|
|
|
|
<td>Kritischer Zustand.</td>
|
|
|
|
<td>"socket: Failed to get a socket, exiting child"
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> "socket: Socket-Zuweisung fehlgeschlagen, beende
|
|
Kindprozess")</span></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><code>error</code> </td>
|
|
|
|
<td>Fehlerbedingung.</td>
|
|
|
|
<td>"Premature end of script headers"
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> "Vorzeitiges Ende der Skript-Header")</span></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><code>warn</code> </td>
|
|
|
|
<td>Warnung.</td>
|
|
|
|
<td>"child process 1234 did not exit, sending another SIGHUP"
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> "Kindprozess 1234 nicht beendet, sende ein weiteres
|
|
SIGHUP")</span></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><code>notice</code> </td>
|
|
|
|
<td>Normaler, aber signifikanter Zustand.</td>
|
|
|
|
<td>"httpd: caught SIGBUS, attempting to dump core in ..."
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> "httpd: SIGBUS empfangen, versuche Speicherabbild nach ...
|
|
zu schreiben")</span></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><code>info</code> </td>
|
|
|
|
<td>Information.</td>
|
|
|
|
<td>"Server seems busy, (you may need to increase
|
|
StartServers, or Min/MaxSpareServers)..."
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> "Server scheint beschäftigt zu sein,
|
|
(möglicherweise müssen Sie StartServers oder
|
|
Min/MaxSpareServers erhöhen)")</span></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><code>debug</code> </td>
|
|
|
|
<td>Debug-Level-Nachrichten</td>
|
|
|
|
<td>"Opening config file ..."
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> "Öffne Konfigurationsdatei ...")</span></td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p>Geben Sie einen bestimmten Level an, denn werden Nachrichten von
|
|
allen höheren Leveln ebenso angezeigt. <em>Z.B.:</em> Wenn
|
|
<code>LogLevel info</code> eingestellt ist, dann werden Nachrichten der
|
|
Log-Level <code>notice</code> und <code>warn</code> ebenso eingetragen.</p>
|
|
|
|
<p>Es wird empfohlen, mindestens den Level <code>crit</code> zu
|
|
verwenden.</p>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
LogLevel notice
|
|
</code></p></div>
|
|
|
|
<div class="note"><h3>Hinweis</h3>
|
|
<p>Beim Protokollieren in eine reguläre Datei können
|
|
Nachrichten des Levels <code>notice</code> nicht unterdrückt
|
|
werden und werden daher immer protokolliert. Dies trifft allerdings
|
|
nicht zu, wenn mittels <code>syslog</code> protokolliert wird.</p>
|
|
</div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="MaxKeepAliveRequests" id="MaxKeepAliveRequests">MaxKeepAliveRequests</a>-<a name="maxkeepaliverequests" id="maxkeepaliverequests">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Anzahl der Anfragen, die bei einer persistenten Verbindung
|
|
zulässig sind</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>MaxKeepAliveRequests <var>Anzahl</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>MaxKeepAliveRequests 100</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">MaxKeepAliveRequests</code>
|
|
begrenzt die Anzahl der Anfragen, die pro Verbindung zulässig sind,
|
|
wenn <code class="directive"><a href="#keepalive">KeepAlive</a></code> eingeschaltet ist.
|
|
Bei der Einstellung <code>0</code> sind unbegrenzt viele Anfragen
|
|
erlaubt. Wir empfehlen für diese Einstellung einen hohen Wert
|
|
für eine maximale Serverleistung.</p>
|
|
|
|
<p>Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
MaxKeepAliveRequests 500
|
|
</code></p></div>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="NameVirtualHost" id="NameVirtualHost">NameVirtualHost</a>-<a name="namevirtualhost" id="namevirtualhost">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Bestimmt eine IP-Adresse für den Betrieb namensbasierter
|
|
virtueller Hosts</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>NameVirtualHost <var>Adresse</var>[:<var>Port</var>]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">NameVirtualHost</code> ist erforderlich,
|
|
wenn Sie <a href="../vhosts/">namensbasierte virtuelle Hosts</a>
|
|
konfigurieren möchten.</p>
|
|
|
|
<p>Obwohl <var>Adresse</var> eine Hostname sein kann, wird empfohlen,
|
|
dass Sie stets eine IP-Adresse verwenden, z.B.:</p>
|
|
|
|
<div class="example"><p><code>
|
|
NameVirtualHost 111.22.33.44
|
|
</code></p></div>
|
|
|
|
<p>Mit der <code class="directive">NameVirtualHost</code>-Anweisung geben Sie
|
|
die IP-Adresse an, unter der der Server Anfragen für
|
|
namensbasierte virtuelle Hosts entgegennimmt. Das ist üblicherweise
|
|
die Adresse, zu der die Namen Ihrer namensbasierten virtuellen Hosts
|
|
aufgelöst werden. Falls eine Firewall oder ein anderer Proxy die
|
|
Anfrage in Empfang nimmt und Sie zu einer weiteren IP-Adresse des Servers
|
|
weiterleitet, müssen Sie die IP-Adresse der physikalischen
|
|
Schnittstelle der Maschine angeben, welche die Anfragen bedient.
|
|
Wenn Sie mehrere namensbasierte Hosts an verschiedenen Adressen
|
|
betreiben, wiederholen Sie einfach die Anweisung für jede
|
|
Adresse.</p>
|
|
|
|
<div class="note"><h3>Anmerkung</h3>
|
|
<p>Beachten Sie, dass der "Hauptserver" und jeder
|
|
<code>_default_</code>-Server <strong>niemals</strong> bei einer
|
|
Anfrage an einer <code class="directive">NameVirtualHost</code>-IP-Adresse
|
|
bedient wird (es sei denn, Sie geben aus irgendwelchen Gründen
|
|
<code class="directive">NameVirtualHost</code> an, definieren dann aber keine
|
|
<code class="directive">VirtualHost</code>s für diese Adresse).</p>
|
|
</div>
|
|
|
|
<p>Optional können Sie die Nummer eines Ports angeben, an dem
|
|
namensbasierte virtuelle Hosts verwendet werden sollen. Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
NameVirtualHost 111.22.33.44:8080
|
|
</code></p></div>
|
|
|
|
<p>IPv6-Adressen müssen, wie im folgenden Beispiel angegeben, in
|
|
eckige Klammern eingeschlossen werden:</p>
|
|
|
|
<div class="example"><p><code>
|
|
NameVirtualHost [2001:db8::a00:20ff:fea7:ccea]:8080
|
|
</code></p></div>
|
|
|
|
<p>Um an allen Schnittstellen Anfragen zu empfangen, können Sie
|
|
<code>*</code> als Argument verwenden.</p>
|
|
|
|
<div class="example"><p><code>
|
|
NameVirtualHost *
|
|
</code></p></div>
|
|
|
|
<div class="note"><h3>Argument der Direktive <code class="directive"><VirtualHost></code></h3>
|
|
<p>Beachten Sie, dass das Argument der <code class="directive"><VirtualHost></code>-Anweisung exakt auf das Argument
|
|
der <code class="directive">NameVirtualHost</code>-Anweisung passen muss.</p>
|
|
|
|
<div class="example"><p><code>
|
|
NameVirtualHost 1.2.3.4<br />
|
|
<VirtualHost 1.2.3.4><br />
|
|
# ...<br />
|
|
</VirtualHost><br />
|
|
</code></p></div>
|
|
</div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../vhosts/">Dokumentation zu virtuellen Hosts</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="Options" id="Options">Options</a>-<a name="options" id="options">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Definiert, welche Eigenschaften oder Funktionen in einem
|
|
bestimmten Verzeichnis verfügbar sind</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Options
|
|
[+|-]<var>Option</var> [[+|-]<var>Option</var>] ...</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>Options All</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Options</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">Options</code> steuert, welche
|
|
Eigenschaften bzw. Funktionen in einem bestimmten Verzeichnis
|
|
verfügbar sind.</p>
|
|
|
|
<p><var>Option</var> kann auf <code>None</code> gesetzt werden, wobei
|
|
keine der besonderen Eigenschaften verfügbar sind, oder auf eines
|
|
oder mehrere der folgenden:</p>
|
|
|
|
<dl>
|
|
<dt><code>All</code></dt>
|
|
|
|
<dd>Alle Optionen außer <code>MultiViews</code>. Dies ist
|
|
die Voreinstellung.</dd>
|
|
|
|
<dt><code>ExecCGI</code></dt>
|
|
|
|
<dd>Die Ausführung von CGI-Skripten, welche <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>
|
|
verwenden, ist erlaubt.</dd>
|
|
|
|
<dt><code>FollowSymLinks</code></dt>
|
|
|
|
<dd>Der Server folgt symbolischen Links in diesem Verzeichnis.
|
|
<div class="note">
|
|
<p>Auch wenn der Server symbolischen Links folgt, bedeutet dies
|
|
<em>nicht</em>, dass der zum Abgleich gegen <code class="directive"><a href="#directory"><Directory></a></code>-Abschnitte verwendete Pfadname
|
|
wechselt.</p>
|
|
<p>Beachten Sie auch, dass diese Option innerhalb eines
|
|
<code class="directive"><a href="#location"><Location></a></code>-Abschnitts
|
|
<strong>ignoriert wird</strong>.</p>
|
|
</div></dd>
|
|
|
|
<dt><code>Includes</code></dt>
|
|
|
|
<dd>
|
|
Server Side Includes, die von <code class="module"><a href="../mod/mod_include.html">mod_include</a></code> bereitgestellt
|
|
werden, sind erlaubt.</dd>
|
|
|
|
<dt><code>IncludesNOEXEC</code></dt>
|
|
|
|
<dd>Server Side Includes sind erlaubt, <code>#exec cmd</code>
|
|
und <code>#exec cgi</code> sind jedoch deaktiviert. Es ist aber noch
|
|
möglich, CGI-Skripte aus
|
|
<code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>-Verzeichnissen mittels
|
|
<code>#include virtual</code> einzubinden.</dd>
|
|
|
|
<dt><code>Indexes</code></dt>
|
|
|
|
<dd>Wenn eine URL, die auf ein Verzeichnis zeigt, in dem sich keine durch
|
|
<code class="directive"><a href="../mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> definierte
|
|
Indexdatei (<em>z.B.</em> <code>index.html</code>) befindet, dann liefert
|
|
<code class="module"><a href="../mod/mod_autoindex.html">mod_autoindex</a></code> eine formatierte Auflistung des
|
|
Verzeichnisses zurück.</dd>
|
|
|
|
<dt><code>MultiViews</code></dt>
|
|
|
|
<dd>"MultiViews" sind bei der Verwendung von
|
|
<code class="module"><a href="../mod/mod_negotiation.html">mod_negotiation</a></code> erlaubt (siehe <a href="../content-negotiation.html">Content-Negotiation</a>).</dd>
|
|
|
|
<dt><code>SymLinksIfOwnerMatch</code></dt>
|
|
|
|
<dd>Der Server folgt nur symbolischen Links, bei denen die Zieldatei
|
|
bzw. das Zielverzeichnis der gleichen Benutzerkennung gehört, wie
|
|
der Link.
|
|
<div class="note"><h3>Anmerkung</h3> Diese Option wird innerhalb eines
|
|
<code class="directive"><a href="#location"><Location></a></code>-Abschnitts
|
|
ignoriert.</div></dd>
|
|
</dl>
|
|
|
|
<p>Wenn mehrere <code class="directive">Options</code> auf ein Verzeichnis
|
|
angewandt werden können, dann wird normalerweise die
|
|
spezifischste <span class="transnote">(<em>Anm.d.Ü.:</em> Gemeint ist die zuletzt
|
|
ausgeführte Option.)</span> verwendet und alle anderen werden
|
|
ignoriert; die Optionen werden nicht vermischt. (Siehe auch <a href="../sections.html#mergin">Wie Abschnitte zusammengeführt
|
|
werden.</a>.) Wenn jedoch <em>allen</em> Optionen der
|
|
<code class="directive">Options</code>-Anweisung eines der Zeichen
|
|
<code>+</code> oder <code>-</code> vorangestellt wird, werden die Optionen
|
|
zusammengemischt. Jede Option mit vorangestelltem <code>+</code> wird
|
|
zu den momentan gültigen Optionen hinzugefügt und jede Option
|
|
mit vorangestelltem <code>-</code> wird aus den derzeit gültigen
|
|
Optionen entfernt.</p>
|
|
|
|
<p>So wird zum Beispiel ohne die Zeichen <code>+</code> und
|
|
<code>-</code></p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory /web/docs><br />
|
|
<span class="indent">
|
|
Options Indexes FollowSymLinks<br />
|
|
</span>
|
|
</Directory><br />
|
|
<br />
|
|
<Directory /web/docs/spec><br />
|
|
<span class="indent">
|
|
Options Includes<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<p>für das Verzeichnis <code>/web/docs/spec</code> wird jetzt
|
|
lediglich <code>Includes</code> gesetzt. Wenn die zweite
|
|
<code class="directive">Options</code>-Anweisung jedoch <code>+</code>-
|
|
und <code>-</code>-Zeichen verwenden würde,</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory /web/docs><br />
|
|
<span class="indent">
|
|
Options Indexes FollowSymLinks<br />
|
|
</span>
|
|
</Directory><br />
|
|
<br />
|
|
<Directory /web/docs/spec><br />
|
|
<span class="indent">
|
|
Options +Includes -Indexes<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<p>dann würden die Optionen <code>FollowSymLinks</code> und
|
|
<code>Includes</code> für das Verzeichnis <code>/web/docs/spec</code>
|
|
gesetzt.</p>
|
|
|
|
<div class="note"><h3>Anmerkung</h3>
|
|
<p>Die Verwendung von <code>-IncludesNOEXEC</code> oder
|
|
<code>-Includes</code> deaktiviert Server Side Includes unabhängig
|
|
von der vorigen Einstellung vollständig.</p>
|
|
</div>
|
|
|
|
<p>Die Voreinstellung ist <code>All</code>, sofern keine anderen Angaben
|
|
gemacht wurden.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="Require" id="Require">Require</a>-<a name="require" id="require">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Wählt die authentisierten Benutzer aus, die auf eine
|
|
Ressource zugreifen können</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Require <var>Name</var> [<var>Name</var>] ...</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive wählt aus, welche authentisierten Benutzer auf eine
|
|
Ressource zugreifen dürfen. Folgende Syntax ist erlaubt:</p>
|
|
|
|
<dl>
|
|
<dt><code>Require user <var>User-ID</var> [<var>User-ID</var>]
|
|
...</code></dt>
|
|
<dd>Nur die genannten Benutzer dürfen auf die Ressource
|
|
zugreifen.</dd>
|
|
|
|
<dt><code>Require group <var>Gruppenname</var> [<var>Gruppenname</var>]
|
|
...</code></dt>
|
|
<dd>Nur Benutzer der genannten Gruppen dürfen auf die
|
|
Ressource zugreifen.</dd>
|
|
|
|
<dt><code>Require valid-user</code></dt>
|
|
<dd>Alle gültigen Benutzer dürfen auf die Ressource
|
|
zugreifen.</dd>
|
|
</dl>
|
|
|
|
<p><code class="directive">Require</code> muss von den Direktiven
|
|
<code class="directive"><a href="#authname">AuthName</a></code> und <code class="directive"><a href="#authtype">AuthType</a></code> sowie Direktiven wie
|
|
<code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>
|
|
und <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>
|
|
(zur Definition von Benutzern und Gruppen) begleitet werden, um
|
|
korrekt zu funktionieren. Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
AuthType Basic<br />
|
|
AuthName "Geschützte Ressource"<br />
|
|
AuthUserFile /web/users<br />
|
|
AuthGroupFile /web/groups<br />
|
|
Require group admin
|
|
</code></p></div>
|
|
|
|
<p>Zugriffskontrollen, die in dieser Form angewandt werden, gelten
|
|
für <strong>alle</strong> Methoden. <strong>Dies ist normalerweise
|
|
gewünscht.</strong> Wenn Sie Zugriffskontrollen nur auf bestimmte
|
|
Methoden anwenden möchten, während andere Methoden
|
|
ungeschützt bleiben, dann müssen Sie die
|
|
<code class="directive">Require</code>-Anweisung innerhalb eines
|
|
<code class="directive"><a href="#limit"><Limit></a></code>-Abschnitts
|
|
platzieren.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#satisfy">Satisfy</a></code></li>
|
|
<li><code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="RLimitCPU" id="RLimitCPU">RLimitCPU</a>-<a name="rlimitcpu" id="rlimitcpu">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Begrenzt den CPU-Verbrauch von Prozessen, die von
|
|
Apache-Kindprozessen gestartet wurden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>RLimitCPU <var>Sekunden</var>|max [<var>Sekunden</var>|max]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>unbestimmt; verwendet die Voreinstellung des Systems</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>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 <code>max</code> sein. <code>max</code>
|
|
zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
|
|
verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
|
|
erfordert, dass der Server als <code>root</code> läuft, zumindest in
|
|
der anfänglichen Startphase.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>CPU-Ressourcenbegrenzung wird in Sekunden pro Prozess
|
|
ausgedrückt.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#rlimitmem">RLimitMEM</a></code></li>
|
|
<li><code class="directive"><a href="#rlimitnproc">RLimitNPROC</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="RLimitMEM" id="RLimitMEM">RLimitMEM</a>-<a name="rlimitmem" id="rlimitmem">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Begrenzt den Speicherverbrauch von Prozessen, die von
|
|
Apache-Kindprozessen gestartet wurden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>RLimitMEM <var>Bytes</var>|max [<var>Bytes</var>|max]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>unbestimmt; verwendet die Voreinstellung des Systems</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>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 <code>max</code> sein. <code>max</code>
|
|
zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
|
|
verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
|
|
erfordert, dass der Server als <code>root</code> läuft, zumindest in
|
|
der anfänglichen Startphase.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>Die Begrenzung des Speicherverbrauchs wird in Bytes pro Prozess
|
|
ausgedrückt.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#rlimitcpu">RLimitCPU</a></code></li>
|
|
<li><code class="directive"><a href="#rlimitnproc">RLimitNPROC</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="RLimitNPROC" id="RLimitNPROC">RLimitNPROC</a>-<a name="rlimitnproc" id="rlimitnproc">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Begrenzt die Anzahl der Prozesse, die von Prozessen gestartet
|
|
werden können, der ihrerseits von Apache-Kinprozessen gestartet
|
|
wurden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>RLimitNPROC <var>Zahl</var>|max [<var>Zahl</var>|max]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>unbestimmt; verwendet die Voreinstellung des Systems</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>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 <code>max</code> sein. <code>max</code>
|
|
zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
|
|
verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
|
|
erfordert, dass der Server als <code>root</code> läuft, zumindest in
|
|
der anfänglichen Startphase.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>Prozessbegrenzungen steuern die Anzahl der Prozesse pro Benutzer.</p>
|
|
|
|
<div class="note"><h3>Anmerkung</h3>
|
|
<p>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
|
|
<strong><code>cannot fork</code></strong>-Meldungen
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> <code>kann nicht abspalten</code>)</span> in der
|
|
Datei <code>error_log</code>.</p>
|
|
</div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#rlimitmem">RLimitMEM</a></code></li>
|
|
<li><code class="directive"><a href="#rlimitcpu">RLimitCPU</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="Satisfy" id="Satisfy">Satisfy</a>-<a name="satisfy" id="satisfy">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Zusammenspiel von rechnerbasierter Zugriffskontrolle und
|
|
Benutzerauthentisierung</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Satisfy Any|All</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>Satisfy All</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Wird seit Version 2.0.51 von <code class="directive"><a href="#limit"><Limit></a></code> und <code class="directive"><a href="#limitexcept"><LimitExcept></a></code> beeinflusst</td></tr>
|
|
</table>
|
|
<p>Verfahrensweise für den Zugriff, falls sowohl <code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code> als auch <code class="directive"><a href="#require">Require</a></code> verwendet werden. Der Parameter kann
|
|
entweder <code>All</code> oder <code>Any</code> sein. Die Direktive ist
|
|
nur dann nützlich, wenn der Zugriff zu einem bestimmten Bereich
|
|
durch Benutzername/Passwort <em>und</em> Clientrechner-Adressen
|
|
eingeschränkt ist. In diesem Fall verlangt die Voreinstellung
|
|
(<code>All</code>), dass der Client die Adressbeschränkung passiert
|
|
<em>und</em> eine gültige Benutzerkennung und ein gültiges
|
|
Passwort übermittelt. Mit der Auswahl <code>Any</code> 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.</p>
|
|
|
|
<p>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:</p>
|
|
|
|
<div class="example"><p><code>
|
|
Require valid-user<br />
|
|
Allow from 192.168.1<br />
|
|
Satisfy Any
|
|
</code></p></div>
|
|
|
|
<p>Seit Version 2.0.51 können
|
|
<code class="directive">Satisfy</code>-Anweisungen durch <code class="directive"><a href="#limit"><Limit></a></code>- und <code class="directive"><a href="#limitexcept"><LimitExcept></a></code>-Abschnitte auf bestimmte Methoden
|
|
beschränkt werden.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code></li>
|
|
<li><code class="directive"><a href="#require">Require</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ScriptInterpreterSource" id="ScriptInterpreterSource">ScriptInterpreterSource</a>-<a name="scriptinterpretersource" id="scriptinterpretersource">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Methode zur Ermittlung des Interpreters von
|
|
CGI-Skripten</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ScriptInterpreterSource Registry|Registry-Strict|Script</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>ScriptInterpreterSource Script</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>ausschließlich Win32;
|
|
Die Option <code>Registry-Strict</code> ist verfügbar seit Apache
|
|
2.0.</td></tr>
|
|
</table>
|
|
<p>Die Direktive steuert, wie der Apache den Interpreter zur Ausführung
|
|
von CGI-Skripten bestimmt. Die Voreinstellung ist <code>Script</code>. Dies
|
|
veranlaßt den Apache, den Interpreter zu verwenden, auf den die
|
|
Shebang-Zeile (erste Zeile, beginnt mit <code>#!</code>) im Skript zeigt.
|
|
Auf Win32-Systemen sieht diese Zeile üblicherweise so aus:</p>
|
|
|
|
<div class="example"><p><code>
|
|
#!C:/Perl/bin/perl.exe
|
|
</code></p></div>
|
|
|
|
<p>oder, wenn <code>perl</code> im Pfad (Umgebungsvariable <code>PATH</code>) liegt,
|
|
einfach:</p>
|
|
|
|
<div class="example"><p><code>
|
|
#!perl
|
|
</code></p></div>
|
|
|
|
<p>Die Einstellung <code>ScriptInterpreterSource Registry</code>
|
|
veranlaßt eine Suche in <code>HKEY_CLASSES_ROOT</code> der
|
|
Windows-Registrierungsdatenbank und verwendet die Endung der Skript-Datei
|
|
(z.B. <code>.pl</code>) als Suchargument. Der durch den Unterschlüssel
|
|
<code>Shell\ExecCGI\Command</code> oder, falls dieser nicht existiert,
|
|
<code>Shell\Open\Command</code> 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
|
|
<code>Script</code>.</p>
|
|
|
|
<div class="warning"><h3>Sicherheit</h3>
|
|
<p>Seien Sie vorsichtig, <code>ScriptInterpreterSource Registry</code> bei
|
|
Verzeichnissen zu verwenden, auf die eine <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>-Anweisung zeigt, denn der
|
|
Apache versucht <strong>jede</strong> Datei innerhalb des Verzeichnisses
|
|
auszuführen. Die Einstellung <code>Registry</code> 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 <code>.htm</code>-Dateien den Microsoft
|
|
Internet Explorer, so dass jede HTTP-Anfrage nach einer existierenden
|
|
<code>.htm</code>-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.</p>
|
|
</div>
|
|
|
|
<p>Die seit Apache 2.0 neue Option <code>Registry-Strict</code>
|
|
macht das gleiche wie <code>Registry</code>, verwendet jedoch nur den
|
|
Unterschlüssel <code>Shell\ExecCGI\Command</code>. Der Schlüssel
|
|
<code>ExecCGI</code> ist gewöhnlich nicht voreingestellt. Er muss
|
|
manuell eingerichtet werden und schützt Ihr System so for
|
|
versehentlichen Programmaufrufen.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ServerAdmin" id="ServerAdmin">ServerAdmin</a>-<a name="serveradmin" id="serveradmin">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>E-Mail-Adresse, die der Server in Fehlermeldungen einfügt,
|
|
welche an den Client gesendet werden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerAdmin <var>E-Mail-Adresse</var>|<var>URL</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p><code class="directive">ServerAdmin</code> legt die Kontaktadresse fest,
|
|
die der Server in jede Fehlermeldung einfügt, die er an den
|
|
Client zurückschickt. Wenn <code>httpd</code> das übergebene
|
|
Argument nicht als URL erkennt, nimmt er an, dess es sich um eine
|
|
<var>E-Mail-Adresse</var> handelt und stellt in Hyperlinks
|
|
<code>mailto:</code> 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.</p>
|
|
|
|
<p>Es kann sich lohnen, hierfür eine reservierte Adresse
|
|
anzugeben, z.B.</p>
|
|
|
|
<div class="example"><p><code>
|
|
ServerAdmin www-admin@foo.example.com
|
|
</code></p></div>
|
|
|
|
<p>da Anwender nicht unbedingt erwähnen, dass sie vom Server
|
|
sprechen!</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ServerAlias" id="ServerAlias">ServerAlias</a>-<a name="serveralias" id="serveralias">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Alternativer Name für einen Host, der verwendet wird, wenn
|
|
Anfragen einem namensbasierten virtuellen Host zugeordnet werden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerAlias <var>Hostname</var> [<var>Hostname</var>] ...</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">ServerAlias</code> bestimmt die
|
|
alternativen Namen eines Hosts zur Verwendung mit <a href="../vhosts/name-based.html">namensbasierten virtuellen Hosts</a>.</p>
|
|
|
|
<div class="example"><p><code>
|
|
<VirtualHost *><br />
|
|
ServerName server.domain.com<br />
|
|
ServerAlias server server2.domain.com server2<br />
|
|
# ...<br />
|
|
</VirtualHost>
|
|
</code></p></div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../vhosts/">Apache-Dokumentation zu virtuellen
|
|
Hosts</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ServerName" id="ServerName">ServerName</a>-<a name="servername" id="servername">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Rechnername und Port, die der Server dazu verwendet, sich
|
|
selbst zu identifizieren</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerName
|
|
<var>voll-qualifizierter-Domainname</var>[:<var>port</var>]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Diese Direktive löst in Version 2.0 die
|
|
Funktionalität der Direktive <code class="directive">Port</code> aus
|
|
Version 1.3 ab.</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">ServerName</code> bestimmt den
|
|
Rechnernamen und Port, den der Server dazu verwendet, sich selbst
|
|
zu identifizieren. Diese werden bei der Erstellung von Umleitungs-URLs
|
|
benötigt. Wenn beispielsweise der Name der Maschine, die den Webserver
|
|
beherbergt, <code>simple.example.com</code> lautet, die Maschine jedoch
|
|
auch einen DNS-Alias <code>www.example.com</code> besitzt und Sie den
|
|
Webserver so identifizieren möchten, sollten Sie die folgende
|
|
Anweisung verwenden:</p>
|
|
|
|
<div class="example"><p><code>
|
|
ServerName www.example.com:80
|
|
</code></p></div>
|
|
|
|
<p>Wenn kein <code class="directive">ServerName</code> angegeben wurde,
|
|
dann versucht der Server den Rechnernamen mittels eines Reverse-Lookup
|
|
herzuleiten. Wenn kein Port in der
|
|
<code class="directive">ServerName</code>-Anweisung angegeben wurde, dann
|
|
verwendet der Server den Port der eingegangenen Anfrage. Für eine
|
|
optimale Zuverlässigkeit und Berechenbarkeit sollten Sie einen
|
|
eindeutigen Rechnernamen und Port angeben, in dem Sie die Direktive
|
|
<code class="directive">ServerName</code> verwenden.</p>
|
|
|
|
<p>Wenn Sie <a href="../vhosts/name-based.html">namensbasierte
|
|
virtuelle Hosts</a> verwenden, gibt <code class="directive">ServerName</code>
|
|
innerhalb eines <code class="directive"><a href="#virtualhost"><VirtualHost></a></code>-Abschnitts an, welcher
|
|
Hostname im <code>Host:</code>-Header der Anfrage auftauchen muss,
|
|
damit sie diesem virtuellen Host zugeordnet wird.</p>
|
|
|
|
<p>Lesen Sie bitte die Beschreibung der Direktive <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code> für Einstellungen, die
|
|
bestimmen, ob selbstreferenzierende URLs (z.B. vom Modul
|
|
<code class="module"><a href="../mod/mod_dir.html">mod_dir</a></code>) auf den angegebenen Port zeigen oder auf die
|
|
Portnummern die in der Anfrage des Clients angegeben ist.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../dns-caveats.html">Probleme bezüglich DNS und
|
|
Apache</a></li>
|
|
<li><a href="../vhosts/">Apache-Dokumentation zu virtuellen
|
|
Hosts</a></li>
|
|
<li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li>
|
|
<li><code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code></li>
|
|
<li><code class="directive"><a href="#serveralias">ServerAlias</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ServerPath" id="ServerPath">ServerPath</a>-<a name="serverpath" id="serverpath">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Veralteter URL-Pfad für einen namensbasierten
|
|
virtuellen Host, auf den von einem inkompatiblen Browser zugegriffen
|
|
wird</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerPath <var>URL-Pfad</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Virtual Host</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">ServerPath</code> legt den
|
|
veralteten <span class="transnote">(<em>Anm.d.Ü.:</em> Gemeint ist eigentlich "Altlast" aufgrund
|
|
antiquierter Clients.)</span> URL-Pfad eines Hosts zur Verwendung mit
|
|
<a href="../vhosts/">namensbasierten virtuellen Hosts</a> fest.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../vhosts/">Apache-Dokumentation zu virtuellen
|
|
Hosts</a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ServerRoot" id="ServerRoot">ServerRoot</a>-<a name="serverroot" id="serverroot">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Basisverzeichnis der Serverinstallation</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerRoot <var>Verzeichnis</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>ServerRoot /usr/local/apache</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">ServerRoot</code> bestimmt das
|
|
Verzeichnis, in dem der Server installiert ist. Üblicherweise
|
|
enthält es die Unterverzeichnisse <code>conf/</code> und
|
|
<code>logs/</code>. Relative Pfadangaben anderer Direktiven (wie z.B.
|
|
<code class="directive"><a href="#include">Include</a></code> oder <code class="directive"><a href="../mod/mod_so.html#loadmodule">LoadModule</a></code>) werden relativ zu diesem
|
|
Verzeichnis betrachtet.</p>
|
|
|
|
<div class="example"><h3>Beispiel</h3><p><code>
|
|
ServerRoot /home/httpd
|
|
</code></p></div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../invoking.html">Die <code>httpd</code>-Option
|
|
<code>-d</code></a></li>
|
|
<li><a href="../misc/security_tips.html#serverroot">Sicherheitshinweise</a>
|
|
für Informationen, wie die Rechte auf das <code class="directive">ServerRoot</code>-Verzeichnis richtig gesetzt werden</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ServerSignature" id="ServerSignature">ServerSignature</a>-<a name="serversignature" id="serversignature">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Konfiguriert die Fußzeile von servergenerierten
|
|
Dokumenten</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerSignature On|Off|EMail</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>ServerSignature Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>All</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">ServerSignature</code> ermöglicht
|
|
die Gestaltung einer unter servergenerierten Dokumenten (z.B.
|
|
Fehlerdokumente, FTP-Verzeichnislisten von <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code>,
|
|
<code class="module"><a href="../mod/mod_info.html">mod_info</a></code>-Ausgaben, ...) angefügten
|
|
Fußzeile. Ein möglicher Grund für die Aktivierung einer
|
|
solchen Fußzeile ist, dass der Anwender bei einer Kette von
|
|
Proxy-Servern oft keine Möglichkeit hat, zu erkennen, welcher der
|
|
verketteten Server gegenwärtig die zurückgegebene Fehlermeldung
|
|
produziert hat.</p>
|
|
|
|
<p>Die (Vor-)Einstellung <code>Off</code> unterdrückt die
|
|
Fußzeile (und ist damit kompatibel zum Verhalten des Apache 1.2 und
|
|
früher). Die Einstellung <code>On</code> fügt schlicht eine
|
|
Zeile mit der Versionsnummer des Servers und dem Servernamen (<code class="directive"><a href="#servername">ServerName</a></code>) des bedienenden virtuellen Hosts an.
|
|
Die Einstellung <code>EMail</code> erstellt zusätzlich einen
|
|
"mailto:"-Verweis zum Serveradministrator (<code class="directive"><a href="#serveradmin">ServerAdmin</a></code>) des referenzierten Dokuments.</p>
|
|
|
|
<p>Ab Version 2.0.44 werden die Details der angegebenen Versionsnummer des
|
|
Servers von der Direktive <code class="directive"><a href="#servertokens">ServerTokens</a></code> kontrolliert.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#servertokens">ServerTokens</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="ServerTokens" id="ServerTokens">ServerTokens</a>-<a name="servertokens" id="servertokens">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Konfiguriert den HTTP-Response-Header
|
|
<code>Server</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ServerTokens Major|Minor|Min[imal]|Prod[uctOnly]|OS|Full</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>ServerTokens Full</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>die Direktive steuert, ob der Response-Header <code>Server</code>,
|
|
der an den Client zurückgesendet wird, eine Beschreibung des
|
|
allgemeinen Betriesbsystemtyps des Servers wie auch Informationen
|
|
über einkompilierte Module enthält.</p>
|
|
|
|
<dl>
|
|
<dt><code>ServerTokens Prod[uctOnly]</code></dt>
|
|
|
|
<dd>Der Server sendet (<em>z.B.</em>): <code>Server:
|
|
Apache</code></dd>
|
|
|
|
<dt><code>ServerTokens Major</code></dt>
|
|
|
|
<dd>Der Server sendet (<em>z.B.</em>): <code>Server:
|
|
Apache/2</code></dd>
|
|
|
|
<dt><code>ServerTokens Minor</code></dt>
|
|
|
|
<dd>Der Server sendet (<em>z.B.</em>): <code>Server:
|
|
Apache/2.0</code></dd>
|
|
|
|
<dt><code>ServerTokens Min[imal]</code></dt>
|
|
|
|
<dd>Der Server sendet (<em>z.B.</em>): <code>Server:
|
|
Apache/2.0.41</code></dd>
|
|
|
|
<dt><code>ServerTokens OS</code></dt>
|
|
|
|
<dd>Der Server sendet (<em>z.B.</em>): <code>Server: Apache/2.0.41
|
|
(Unix)</code></dd>
|
|
|
|
<dt><code>ServerTokens Full</code> (oder nicht angegeben)</dt>
|
|
|
|
<dd>Der Server sendet (<em>z.B.</em>): <code>Server: Apache/2.0.41
|
|
(Unix) PHP/4.2.2 MyMod/1.2</code></dd>
|
|
</dl>
|
|
|
|
<p>Diese Einstellung gilt für den gesamten Server und kann nicht
|
|
auf Virtual-Host-Basis aktiviert oder deaktiviert werden.</p>
|
|
|
|
<p>Ab Version 2.0.44 steuert diese Direktive auch die Informationen, die
|
|
durch die Direktive <code class="directive"><a href="#serversignature">ServerSignature</a></code>
|
|
angeboten werden.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#serversignature">ServerSignature</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="SetHandler" id="SetHandler">SetHandler</a>-<a name="sethandler" id="sethandler">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Erzwingt die Verarbeitung aller passenden Dateien durch
|
|
einen Handler</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>SetHandler <var>Handlername</var>|None</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Seit Apache 2.0 im Core</td></tr>
|
|
</table>
|
|
<p>Wenn die Direktive innerhalb einer <code>.htaccess</code>-Datei
|
|
oder in einem <code class="directive"><a href="#directory"><Directory></a></code>- oder
|
|
<code class="directive"><a href="#location"><Location></a></code>-Abschnitt
|
|
angegeben wird, erzwingt sie, dass alle entsprechenden Dateien von dem
|
|
durch <var>Handlername</var> angegebenen <a href="../handler.html">Handler</a> analysiert werden. Wenn Sie
|
|
beispielsweise ein Verzeichnis haben, dessen Dateien unabhängig von
|
|
der Endung gänzlich als Image-Maps interpretiert werden sollen,
|
|
können Sie folgendes in eine <code>.htaccess</code>-Datei in
|
|
dem Verzeichnis schreiben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
SetHandler imap-file
|
|
</code></p></div>
|
|
|
|
<p>Noch ein Beispiel: wenn Sie den Server immer, wenn die URL
|
|
<code>http://servername/status</code> aufgerufen wird, einen
|
|
Statusbericht anzeigen lassen möchten, dann können
|
|
Sie folgendes in die <code>httpd.conf</code> schreiben:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Location /status><br />
|
|
<span class="indent">
|
|
SetHandler server-status<br />
|
|
</span>
|
|
</Location>
|
|
</code></p></div>
|
|
<p>Sie können eine zuvor definierte
|
|
<code class="directive">SetHandler</code>-Anweisung aufheben, indem Sie den Wert
|
|
<code>None</code> verwenden.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="SetInputFilter" id="SetInputFilter">SetInputFilter</a>-<a name="setinputfilter" id="setinputfilter">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Bestimmt die Filter, die Client-Anfragen und POST-Eingaben
|
|
verarbeiten</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>SetInputFilter <var>Filter</var>[;<var>Filter</var>...]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">SetInputFilter</code> bestimmt den oder
|
|
die Filter, die Client-Anfragen und POST-Eingaben verarbeiten, wenn
|
|
sie vom Server empfangen werden. Diese gelten zusätzlich zu
|
|
anderweitig definierten Filtern, einschließlich denen der Direktive
|
|
<code class="directive"><a href="../mod/mod_mime.html#addinputfilter">AddInputFilter</a></code>.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../filter.html">Filter</a>-Dokumentation</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="SetOutputFilter" id="SetOutputFilter">SetOutputFilter</a>-<a name="setoutputfilter" id="setoutputfilter">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Bestimmt die Filter, die Antworten des Servers verarbeiten</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>SetOutputFilter <var>Filter</var>[;<var>Filter</var>...]</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess</td></tr>
|
|
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">SetOutputFilter</code> bestimmt
|
|
die Filter, die Antworten des Servers verarbeiten, bevor sie an den
|
|
Client gesendet werden. Diese gelten zusätzlich zu anderweitig
|
|
definierten Filtern, einschließlich denen der Direktive
|
|
<code class="directive"><a href="../mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code>.</p>
|
|
|
|
<p>Die folgende Konfiguration verarbeitet zum Beispiel alle Dateien
|
|
im Verzeichnis <code>/www/data</code> als Server Side Includes.</p>
|
|
|
|
<div class="example"><p><code>
|
|
<Directory /www/data/><br />
|
|
<span class="indent">
|
|
SetOutputFilter INCLUDES<br />
|
|
</span>
|
|
</Directory>
|
|
</code></p></div>
|
|
|
|
<p>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.</p>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../filter.html">Filter</a>-Dokumentation</li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="TimeOut" id="TimeOut">TimeOut</a>-<a name="timeout" id="timeout">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Zeitspanne, die der Server auf verschiedene Ereignisse wartet,
|
|
bevor er die Anfrage abbricht</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>TimeOut <var>Sekunden</var></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>TimeOut 300</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>Die Direktive <code class="directive">TimeOut</code> definiert derzeit die
|
|
Zeitspanne, die der Apache auf drei Dinge wartet:</p>
|
|
|
|
<ol>
|
|
<li>Die gesamte Zeispanne, die benötigt wird, um eine GET-Anfrage
|
|
zu empfangen.</li>
|
|
|
|
<li>Die Zeitspanne zwischen dem Empfang von TCP-Paketen einer
|
|
POST- oder PUT-Anfrage.</li>
|
|
|
|
<li>Die Zeitspanne zwischen ACKs bei der Übermittlung der
|
|
TCP-Pakete der Antwort.</li>
|
|
</ol>
|
|
|
|
<p>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.</p>
|
|
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="UseCanonicalName" id="UseCanonicalName">UseCanonicalName</a>-<a name="usecanonicalname" id="usecanonicalname">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Bestimmt, wie der Server seinen eigenen Namen und Port
|
|
ermittelt</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>UseCanonicalName On|Off|DNS</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>UseCanonicalName Off</code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration, Virtual Host, Verzeichnis</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p>In vielen Situationen muss der Apache eine
|
|
<em>selbstreferenzierende</em> URL -- d.h. eine URL, die auf den selben
|
|
Server zurück verweist -- zusammenbauen. Bei <code>UseCanonicalName
|
|
On</code> verwendet der Apache den Hostnamen und Port, der in der
|
|
<code class="directive"><a href="#servername">ServerName</a></code>-Anweisung angegeben ist,
|
|
um den kanonischen Namen des Servers zu erstellen. Dieser Name wird in
|
|
allen selbstreferenzierenden URLs sowie in CGI-Skripten für die
|
|
Werte von <code>SERVER_NAME</code> und <code>SERVER_PORT</code>
|
|
verwendet.</p>
|
|
|
|
<p>Bei <code>UseCanonicalName Off</code> 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 <a href="../vhosts/name-based.html">namensbasierten virtuellen Hosts</a>
|
|
verwendet werden, und sie sind mit den gleichen Clients verfügbar
|
|
<span class="transnote">(<em>Anm.d.Ü.:</em> , die auch in der Lage sind, auf namensbasierte virtuelle Hosts
|
|
zuzugreifen, d.h. einen <code>Host</code>-Header mitschicken)</span>.
|
|
Die CGI-Variablen <code>SERVER_NAME</code> und <code>SERVER_PORT</code>
|
|
werden ebenfalls aus den vom Client angeboten Werten erstellt.</p>
|
|
|
|
<p>Ein Intranet-Server, auf den Anwender mit kurzen Namen wie
|
|
<code>www</code> zugreifen, ist ein Beispiel, wo dies sinnvoll sein kann.
|
|
Sie werden bemerken, dass der Apache den Benutzer auf
|
|
<code>http://www.domain.com/splat/</code> umleitet, wenn dieser einen
|
|
Kurznamen und eine URL, die einem Verzeichnis entspricht, ohne
|
|
abschließenden Schrägstrich eingibt, wie z.B.
|
|
<code>http://www/splat</code>. Wenn Sie Authentisierung aktiviert haben,
|
|
bewirkt dies, dass der Benutzer sich zweimal identifizieren muss
|
|
(einmal für <code>www</code> und noch einmal für
|
|
<code>www.domain.com</code> -- lesen Sie für weitere Informationen <a href="http://httpd.apache.org/docs/misc/FAQ.html#prompted-twice">die
|
|
FAQ zu diesem Thema</a>). Wenn <code class="directive">UseCanonicalName</code>
|
|
jedoch auf <code>Off</code> gesetzt ist, denn wird der Apache zu
|
|
<code>http://www/splat/</code> umleiten.</p>
|
|
|
|
<p>Es existiert noch eine dritte Option, <code>UseCanonicalName DNS</code>,
|
|
die für den Betrieb von IP-basierten Massen-Virtual-Hosts gedacht ist,
|
|
um antiquierte Clients zu unterstützen, die keinen
|
|
<code>Host:</code>-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.</p>
|
|
|
|
<div class="warning"><h3>Warnung</h3>
|
|
<p>Wenn CGI-Skripte Vermutungen aufgrund des Wertes von
|
|
<code>SERVER_NAME</code> 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 <code>SERVER_NAME</code> jedoch lediglich dazu verwendet,
|
|
selbstreferenzierende URLs zu erstellen, sollte das gerade noch
|
|
in Ordnung sein.</p>
|
|
</div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><code class="directive"><a href="#servername">ServerName</a></code></li>
|
|
<li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li>
|
|
</ul>
|
|
</div>
|
|
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
|
<div class="directive-section"><h2><a name="VirtualHost" id="VirtualHost"><VirtualHost></a>-<a name="virtualhost" id="virtualhost">Direktive</a></h2>
|
|
<table class="directive">
|
|
<tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Enthält Direktiven, die nur auf bestimmte Hostnamen oder
|
|
IP-Adressen angewendet werden</td></tr>
|
|
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code><VirtualHost
|
|
<var>Adresse</var>[:<var>Port</var>] [<var>Adresse</var>[:<var>Port</var>]]
|
|
...> ... </VirtualHost></code></td></tr>
|
|
<tr><th><a href="directive-dict.html#Context">Kontext:</a></th><td>Serverkonfiguration</td></tr>
|
|
<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Core</td></tr>
|
|
<tr><th><a href="directive-dict.html#Module">Modul:</a></th><td>core</td></tr>
|
|
</table>
|
|
<p><code class="directive"><VirtualHost></code> und
|
|
<code></VirtualHost></code> 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
|
|
<code class="directive"><VirtualHost></code>-Container enthaltenen
|
|
Konfigurationsanweisungen. <var>Adresse</var> kann sein:</p>
|
|
|
|
<ul>
|
|
<li>Die IP-Adresse des virtuellen Hosts.</li>
|
|
|
|
<li>Ein voll qualifizierter Domainname für die IP-Adresse des
|
|
virtuellen Hosts.</li>
|
|
|
|
<li>Das Zeichen <code>*</code>, welches nur in Kombination mit
|
|
<code>NameVirtualHost *</code> verwendet wird, um allen IP-Adressen
|
|
zu entsprechen.</li>
|
|
|
|
<li>Die Zeichenkette <code>_default_</code>, die nur mit IP-basierten
|
|
virtuellen Hosts verwendet wird, um nicht zugewiesene IP-Adressen
|
|
aufzufangen.</li>
|
|
</ul>
|
|
|
|
<div class="example"><h3>Beispiel</h3><p><code>
|
|
<VirtualHost 10.1.2.3><br />
|
|
<span class="indent">
|
|
ServerAdmin webmaster@host.foo.com<br />
|
|
DocumentRoot /www/docs/host.foo.com<br />
|
|
ServerName host.foo.com<br />
|
|
ErrorLog logs/host.foo.com-error_log<br />
|
|
TransferLog logs/host.foo.com-access_log<br />
|
|
</span>
|
|
</VirtualHost>
|
|
</code></p></div>
|
|
|
|
<p>IPv6-Adressen müssen in eckigen Klammern angegeben werden, da die
|
|
optionale Portnummer sonst nicht erkannt werden kann. Hier ein
|
|
IPv6-Beispiel:</p>
|
|
|
|
<div class="example"><p><code>
|
|
<VirtualHost [2001:db8::a00:20ff:fea7:ccea]><br />
|
|
<span class="indent">
|
|
ServerAdmin webmaster@host.example.com<br />
|
|
DocumentRoot /www/docs/host.example.com<br />
|
|
ServerName host.example.com<br />
|
|
ErrorLog logs/host.example.com-error_log<br />
|
|
TransferLog logs/host.example.com-access_log<br />
|
|
</span>
|
|
</VirtualHost>
|
|
</code></p></div>
|
|
|
|
<p>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 <code>ifconfig
|
|
alias</code> durchgeführt werden -- sofern Ihr Betriebssystem das
|
|
unterstützt).</p>
|
|
|
|
<div class="note"><h3>Anmerkung</h3>
|
|
<p>Die Verwendung von <code class="directive"><VirtualHost></code>
|
|
beeinflusst <strong>nicht</strong>, an welchen Adressen der Apache
|
|
lauscht. Sie müssen mit <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code> sicherstellen, dass der Apache
|
|
an der richtigen Adresse lauscht.</p>
|
|
</div>
|
|
|
|
<p>Bei der Verwendung IP-basierter virtuellen Hosts kann der spezielle
|
|
Name <code>_default_</code> 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
|
|
<code>_default_</code> 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 <code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code>-Anweisung passt, weder den
|
|
"Hauptserver" noch den virtuellen Host <code>_default_</code> verwendet.
|
|
Lesen Sie für weitere Details die Dokumentation zu <a href="../vhosts/name-based.html">namensbasierten virtuell Hosts</a>.)</p>
|
|
|
|
<p>Sie können einen speziellen <code>:Port</code> angeben,
|
|
um den entsprechenden Port zu wechseln. Falls nicht angegeben, wird
|
|
er auf den gleichen Port voreingestellt, wie die letzte
|
|
<code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code>-Anweisung des
|
|
Hauptservers. Sie können auch <code>:*</code> angeben, um alle
|
|
Ports dieser Adresse zu akzeptieren. (Dies wird zusammen mit
|
|
<code>_default_</code> empfohlen.)</p>
|
|
|
|
<div class="warning"><h3>Sicherheit</h3>
|
|
<p>Lesen Sie das Dokument <a href="../misc/security_tips.html">Sicherheitshinweise</a> 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.</p>
|
|
</div>
|
|
|
|
<h3>Siehe auch</h3>
|
|
<ul>
|
|
<li><a href="../vhosts/">Apache-Dokumentation zu virtuellen
|
|
Hosts</a></li>
|
|
<li><a href="../dns-caveats.html">Probleme bezüglich DNS und
|
|
Apache</a></li>
|
|
<li><a href="../bind.html">Bestimmen, welche Adressen und Ports
|
|
der Apache verwendet</a></li>
|
|
<li><a href="../sections.html">Wie die Abschnitte <Directory>,
|
|
<Location> und <Files> arbeiten</a> für eine
|
|
Erläuterung, wie diese verschiedenen Abschnitte miteinander
|
|
kombiniert werden, wenn eine Anfrage empfangen wird</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class="bottomlang">
|
|
<p><span>Verfügbare Sprachen: </span><a href="../de/mod/core.html" title="Deutsch"> de </a> |
|
|
<a href="../en/mod/core.html" hreflang="en" rel="alternate" title="English"> en </a> |
|
|
<a href="../ja/mod/core.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a></p>
|
|
</div><div id="footer">
|
|
<p class="apache">Copyright 2006 The Apache Software Foundation.<br />Lizenziert unter der <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
|
|
<p class="menu"><a href="../mod/">Module</a> | <a href="../mod/directives.html">Direktiven</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossar</a> | <a href="../sitemap.html">Seitenindex</a></p></div>
|
|
</body></html> |