Current Path : /usr/local/apache22/share/doc/apache2/mod/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/local/apache22/share/doc/apache2/mod/core.html.de |
<?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> <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" /> <!-- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX This file is generated from xml source: DO NOT EDIT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --> <title>core - Apache HTTP Server Version 2.2</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 rel="stylesheet" type="text/css" href="../style/css/prettify.css" /> <script src="../style/scripts/prettify.min.js" type="text/javascript"> </script> <link href="../images/favicon.ico" rel="shortcut icon" /><link href="http://httpd.apache.org/docs/current/mod/core.html" rel="canonical" /></head> <body> <div id="page-header"> <p class="menu"><a href="../mod/">Module</a> | <a href="../mod/directives.html">Direktiven</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossar</a> | <a href="../sitemap.html">Seitenindex</a></p> <p class="apache">Apache HTTP Server Version 2.2</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.2</a> > <a href="./">Module</a></div> <div id="page-content"> <div class="retired"><h4>Please note</h4> <p> This document refers to a legacy release (<strong>2.2</strong>) of Apache httpd. The active release (<strong>2.4</strong>) is documented <a href="http://httpd.apache.org/docs/current">here</a>. If you have not already upgraded, please follow <a href="http://httpd.apache.org/docs/current/upgrading.html">this link</a> for more information.</p> <p>You may follow <a href="http://httpd.apache.org/docs/current/mod/core.html">this link</a> to go to the current version of this document.</p></div><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="../fr/mod/core.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | <a href="../ja/mod/core.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | <a href="../tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </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="#acceptfilter">AcceptFilter</a></li> <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="#gprofdir">GprofDir</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#hostnamelookups">HostnameLookups</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#httpprotocoloptions">HttpProtocolOptions</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="#maxranges">MaxRanges</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#mergetrailers">MergeTrailers</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="#protocol">Protocol</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#registerhttpmethod">RegisterHttpMethod</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="#suexec">Suexec</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#timeout">TimeOut</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#traceenable">TraceEnable</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalname">UseCanonicalName</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#virtualhost"><VirtualHost></a></li> </ul> <ul class="seealso"><li><a href="#comments_section">Kommentare</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="AcceptFilter" id="AcceptFilter">AcceptFilter</a>-<a name="acceptfilter" id="acceptfilter">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Configures optimizations for a Protocol's Listener Sockets</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AcceptFilter <var>protocol</var> <var>accept_filter</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> <tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Available in Apache 2.1.5 and later</td></tr> </table><p>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</p><h3>Siehe auch</h3> <ul> <li><code class="directive">Protocol</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="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. RFC2616 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> <p>Beachten Sie bitte, dass die verzeichnisbasierte und .htaccess-Konfiguration von <code class="directive">EnableSendfile</code> nicht vom <code class="module"><a href="../mod/mod_disk_cache.html">mod_disk_cache</a></code>-Modul unterstützt wird. Nur die globale Konfiguration von <code class="directive">EnableSendfile</code> wird vom Modul beachtet. </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="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="GprofDir" id="GprofDir">GprofDir</a>-<a name="gprofdir" id="gprofdir">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Directory to write gmon.out profiling data to. </td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>GprofDir <var>/tmp/gprof/</var>|<var>/tmp/gprof/</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>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</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="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="HttpProtocolOptions" id="HttpProtocolOptions">HttpProtocolOptions</a>-<a name="httpprotocoloptions" id="httpprotocoloptions">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Modify restrictions on HTTP Request Messages</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>HttpProtocolOptions [Strict|Unsafe] [RegisteredMethods|LenientMethods] [Allow0.9|Require1.0]</code></td></tr> <tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>HttpProtocolOptions Strict LenientMethods Allow0.9</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>2.2.32 or 2.4.24 and later</td></tr> </table><p>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</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>) Platzhalterzeichen 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 immer 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="MaxRanges" id="MaxRanges">MaxRanges</a>-<a name="maxranges" id="maxranges">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Number of ranges allowed before returning the complete resource </td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>MaxRanges default | unlimited | none | <var>number-of-ranges</var></code></td></tr> <tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>MaxRanges 200</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>Available in Apache HTTP Server 2.2.21 and later</td></tr> </table><p>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</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="MergeTrailers" id="MergeTrailers">MergeTrailers</a>-<a name="mergetrailers" id="mergetrailers">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Determines whether trailers are merged into headers</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>MergeTrailers [on|off]</code></td></tr> <tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>MergeTrailers 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>2.2.28 and later</td></tr> </table><p>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</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="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="Protocol" id="Protocol">Protocol</a>-<a name="protocol" id="protocol">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Protocol for a listening socket</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Protocol <var>protocol</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>Available in Apache 2.1.5 and later. On Windows, from Apache 2.3.3 and later.</td></tr> </table><p>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</p><h3>Siehe auch</h3> <ul> <li><code class="directive">AcceptFilter</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="RegisterHttpMethod" id="RegisterHttpMethod">RegisterHttpMethod</a>-<a name="registerhttpmethod" id="registerhttpmethod">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Register non-standard HTTP methods</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>RegisterHttpMethod <var>method</var> [<var>method</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 Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</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="Suexec" id="Suexec">Suexec</a>-<a name="suexec" id="suexec">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Enable or disable the suEXEC feature</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Suexec On|Off</code></td></tr> <tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>On if suexec binary exists with proper owner and mode, Off otherwise</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> <tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Available in Apache httpd 2.2.18 and later</td></tr> </table><p>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</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="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="TraceEnable" id="TraceEnable">TraceEnable</a>-<a name="traceenable" id="traceenable">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Determines the behaviour on <code>TRACE</code> requests</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>TraceEnable <var>[on|off|extended]</var></code></td></tr> <tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>TraceEnable 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> <tr><th><a href="directive-dict.html#Compatibility">Kompatibilität:</a></th><td>Available in Apache 1.3.34, 2.0.55 and later</td></tr> </table><p>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</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="UseCanonicalPhysicalPort" id="UseCanonicalPhysicalPort">UseCanonicalPhysicalPort</a>-<a name="usecanonicalphysicalport" id="usecanonicalphysicalport">Direktive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Beschreibung:</a></th><td>Configures how the server determines its own name and port</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>UseCanonicalPhysicalPort On|Off</code></td></tr> <tr><th><a href="directive-dict.html#Default">Voreinstellung:</a></th><td><code>UseCanonicalPhysicalPort 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>Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.</p><h3>Siehe auch</h3> <ul> <li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li> <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="../fr/mod/core.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | <a href="../ja/mod/core.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | <a href="../tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p> </div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Kommentare</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div> <script type="text/javascript"><!--//--><![CDATA[//><!-- var comments_shortname = 'httpd'; var comments_identifier = 'http://httpd.apache.org/docs/2.2/mod/core.html'; (function(w, d) { if (w.location.hostname.toLowerCase() == "httpd.apache.org") { d.write('<div id="comments_thread"><\/div>'); var s = d.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); } else { d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); } })(window, document); //--><!]]></script></div><div id="footer"> <p class="apache">Copyright 2017 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="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossar</a> | <a href="../sitemap.html">Seitenindex</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- if (typeof(prettyPrint) !== 'undefined') { prettyPrint(); } //--><!]]></script> </body></html>