]> granicus.if.org Git - apache/blob - docs/manual/mod/core.xml.de
`build check-ja` :-)
[apache] / docs / manual / mod / core.xml.de
1 <?xml version="1.0"?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.de.xsl"?>
4 <!-- English revision: 1.80 -->
5
6 <!--
7  Copyright 2003-2004 The Apache Software Foundation
8
9  Licensed under the Apache License, Version 2.0 (the "License");
10  you may not use this file except in compliance with the License.
11  You may obtain a copy of the License at
12
13      http://www.apache.org/licenses/LICENSE-2.0
14
15  Unless required by applicable law or agreed to in writing, software
16  distributed under the License is distributed on an "AS IS" BASIS,
17  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  See the License for the specific language governing permissions and
19  limitations under the License.
20 -->
21
22 <modulesynopsis metafile="core.xml.meta">
23
24 <name>core</name>
25 <description>St&auml;ndig verf&uuml;gbare Kernfunktionen des Apache HTTP
26 Servers</description>
27 <status>Core</status>
28
29 <directivesynopsis>
30 <name>AcceptPathInfo</name>
31 <description>Ressourcen lassen angeh&auml;ngte Pfadangaben zu</description>
32 <syntax>AcceptPathInfo On|Off|Default</syntax>
33 <default>AcceptPathInfo Default</default>
34 <contextlist><context>server config</context>
35 <context>virtual host</context><context>directory</context>
36 <context>.htaccess</context></contextlist>
37 <override>FileInfo</override>
38 <compatibility>Verf&uuml;gbar ab Apache 2.0.30</compatibility>
39
40 <usage>
41     <p>Die Direktive steuert, ob Anfragen akzeptiert oder
42     abgewiesen werden, bei denen nach der tats&auml;chlichen
43     Datei (oder einer nicht existierenden Datei in einem existierenden
44     Verzeichnis) zus&auml;tzliche Pfadangaben folgen. Die angeh&auml;ngte
45     Pfadangabe kann Skripten in der Umgebungsvariable <code>PATH_INFO</code>
46     verf&uuml;gbar gemacht werden.</p>
47
48     <p>Nehmen wir beispielsweise an, dass <code>/test/</code> auf ein
49     Verzeichnis zeigt, welches lediglich eine Datei <code>here.html</code>
50     enth&auml;lt. Dann wird bei Anfragen nach
51     <code>/test/here.html/more</code> und
52     <code>/test/nothere.html/more</code> beides Mal <code>/more</code>
53     als <code>PATH_INFO</code> ermittelt.</p>
54
55     <p>Die drei m&ouml;glichen Argumente f&uuml;r die Direktive
56     <directive>AcceptPathInfo</directive> sind:</p>
57
58     <dl>
59     <dt><code>Off</code></dt><dd>Eine Anfrage wird nur dann akzeptiert,
60     wenn sie exakt auf ein existierendes Verzeichnis (oder eine Datei)
61     abgebildet werden kann. Daher w&uuml;rde eine Anfrage mit einer nach dem
62     tats&auml;chlichen Dateinamen angeh&auml;ngten Pfadangabe, wie
63     <code>/test/here.html/more</code> im obigen Beispiel, den Fehler
64     404 NOT FOUND <transnote>nicht gefunden</transnote>
65     zur&uuml;ckgeben.</dd>
66
67     <dt><code>On</code></dt>
68     <dd>Eine Anfrage wird akzeptiert, wenn eine vorangestellte Pfadangabe
69     auf ein existierendes Verzeichnis abgebildet werden kann. Das
70     obige Beispiel <code>/test/here.html/more</code> wird akzeptiert,
71     wenn <code>/test/here.html</code> auf eine g&uuml;ltige Datei
72     zeigt.</dd>
73
74     <dt><code>Default</code></dt>
75     <dd>Die Behandlung von Anfragen mit angeh&auml;ngten Pfadangaben
76     wird von dem f&uuml;r die Anfrage verantwortlichen <a
77     href="../handler.html">Handler</a> bestimmt. Der Core-Handler
78     f&uuml;r gew&ouml;hnliche Dateien weist <code>PATH_INFO</code>-Zugriffe
79     standardm&auml;&szlig;ig zur&uuml;ck. Handler, die Skripte bedienen,
80     wie z.B. <a href="mod_cgi.html">cgi-script</a> und
81     <a href="mod_isapi.html">isapi-isa</a>, sind im Allgemeinen darauf
82     voreingestellt, <code>PATH_INFO</code> zu akzeptieren.</dd>
83     </dl>
84
85     <p>Das eigentliche Ziel von <code>AcceptPathInfo</code> ist es, Ihnen
86     das &Uuml;berschreiben der Voreinstellung der Handler bez&uuml;glich
87     der Akzeptanz oder Ablehnung von <code>PATH_INFO</code> zu erlauben.
88     Eine solche &Auml;nderung ist zum Beispiel notwendig, wenn Sie einen
89     <a href="../filter.html">Filter</a> wie <a
90     href="mod_include.html">INCLUDES</a> verwenden, um Inhalte
91     abh&auml;ngig von <code>PATH_INFO</code> zu generieren. Der
92     Core-Handler w&uuml;rde die Anfrage normalerweise abweisen. Verwenden
93     Sie die folgende Konfiguration, um dennoch solch ein Skript zu
94     erm&ouml;glichen.</p>
95
96     <example>
97       &lt;Files "mypaths.shtml"&gt;<br />
98       <indent>
99         Options +Includes<br />
100         SetOutputFilter INCLUDES<br />
101         AcceptPathInfo On<br />
102       </indent>
103       &lt;/Files&gt;
104     </example>
105
106 </usage>
107 </directivesynopsis>
108
109 <directivesynopsis>
110 <name>AccessFileName</name>
111 <description>Name der dezentralen Konfigurationsdateien</description>
112 <syntax>AccessFileName <var>Dateiname</var> [<var>Dateiname</var>] ...</syntax>
113 <default>AccessFileName .htaccess</default>
114 <contextlist><context>server config</context><context>virtual host</context>
115 </contextlist>
116
117 <usage>
118     <p>Aus dieser Namensliste sucht der Server w&auml;hrend der
119     Bearbeitung einer Anfrage in jedem Verzeichnis nach der ersten
120     existierenden Datei, sofern im betreffenden Verzeichnis dezentrale
121     Konfigurationsdateien <a href="#allowoverride">erlaubt sind</a>.
122     Beispiel:</p>
123
124     <example>
125       AccessFileName .acl
126     </example>
127
128     <p>Vor der R&uuml;cksendung des Dokuments
129     <code>/usr/local/web/index.html</code> wird der Server
130     <code>/.acl</code>, <code>/usr/.acl</code>,
131     <code>/usr/local/.acl</code> und <code>/usr/local/web/.acl</code>
132     einlesen, solange diese nicht mit</p>
133
134     <example>
135       &lt;Directory /&gt;<br />
136       <indent>
137         AllowOverride None<br />
138       </indent>
139       &lt;/Directory&gt;
140     </example>
141
142     <p>deaktiviert wurden.</p>
143 </usage>
144 <seealso><directive module="core">AllowOverride</directive></seealso>
145 <seealso><a href="../configuring.html">Konfigurationsdateien</a></seealso>
146 <seealso><a href="../howto/htaccess.html">.htaccess-Dateien</a></seealso>
147 </directivesynopsis>
148
149 <directivesynopsis>
150 <name>AddDefaultCharset</name>
151 <description>Standard-Zeichenkodierung f&uuml;r Antworten ohne
152 explizit angegebene Zeichenkodierung
153 </description>
154 <syntax>AddDefaultCharset On|Off|<var>Zeichenkodierung</var></syntax>
155 <default>AddDefaultCharset Off</default>
156 <contextlist><context>server config</context>
157 <context>virtual host</context><context>directory</context>
158 <context>.htaccess</context></contextlist>
159 <override>FileInfo</override>
160
161 <usage>
162     <p>Die Direktive gibt den Namen der Zeichenkodierung an, die
163     jeder Antwort hinzugef&uuml;gt wird, welche in den HTTP-Headern
164     keinen Parameter zum Content-Type enth&auml;lt. Dies &uuml;berschreibt
165     jede Zeichenkodierung, die mittels <code>META</code>-Tag im Dokument
166     angegeben ist. Die Angabe von <code>AddDefaultCharset Off</code>
167     deaktiviert die Funktion. <code>AddDefaultCharset On</code>
168     erm&ouml;glicht es, mit der Direktive die Apache-interne
169     Standard-Zeichenkodierung <code>iso-8859-1</code> vorzuschreiben.
170     Sie k&ouml;nnen auch angeben, dass eine andere
171     <var>Zeichenkodierung</var> verwendet werden soll. Zum Beispiel:</p>
172
173     <example>
174       AddDefaultCharset utf-8
175     </example>
176 </usage>
177 </directivesynopsis>
178
179 <directivesynopsis>
180 <name>AddOutputFilterByType</name>
181 <description>einen Ausgabefilter einem bestimmten MIME-Type
182 zuordnen</description>
183 <syntax>AddOutputFilterByType <var>Filter</var>[;<var>Filter</var>...]
184 <var>MIME-Type</var> [<var>MIME-Type</var>] ...</syntax>
185 <contextlist><context>server config</context>
186 <context>virtual host</context><context>directory</context>
187 <context>.htaccess</context></contextlist>
188 <override>FileInfo</override>
189 <compatibility>Verf&uuml;gbar ab Apache 2.0.33</compatibility>
190
191 <usage>
192     <p>Die Direktive aktiviert f&uuml;r eine Anfrage abh&auml;ngig vom
193     MIME-Type der Antwort einen bestimmten Ausgabe-<a href="../filter.html"
194     >Filter</a>.</p>
195
196     <p>Das folgende Beispiel verwendet den Filter <code>DEFLATE</code>,
197     der von <module>mod_deflate</module> angeboten wird. Er komprimiert
198     jede Ausgabe, die  als <code>text/html</code> oder <code>text/plain</code>
199     gekennzeichnet ist, (gleichg&uuml;ltig, ob statisch oder dynamisch)
200     bevor sie an den Client gesendet wird.</p>
201
202     <example>
203       AddOutputFilterByType DEFLATE text/html text/plain
204     </example>
205
206     <p>Wenn Sie den Inhalt von mehr als einem Filter verarbeiten lassen
207     wollen, dann m&uuml;ssen deren Namen durch Semikolons voneinander
208     getrennt werden. Es ist ebenfalls m&ouml;glich, eine
209     <directive>AddOutputFilterByType</directive>-Direktive f&uuml;r
210     jeden von diesen Filtern zu verwenden.</p>
211
212     <p>Die folgende Konfiguration sorgt daf&uuml;r, dass alle
213     Skriptausgaben, die als <code>text/html</code> gekennzeichnet
214     sind, zuerst vom <code>INCLUDES</code>-Filter und dann vom
215     <code>DEFLATE</code>-Filter verarbeitet werden.</p>
216
217     <example>
218     &lt;Location /cgi-bin/&gt;<br />
219     <indent>
220       Options Includes<br />
221       AddOutputFilterByType INCLUDES;DEFLATE text/html<br />
222     </indent>
223     &lt;/Location&gt;
224     </example>
225
226     <note type="warning"><title>Hinweis:</title>
227       <p>Die Aktivierung von Filtern mittels
228       <directive>AddOutputFilterByType</directive> kann in einigen
229       F&auml;llen ganz oder teilweise fehlschlagen. Beispielsweise
230       werden keine Filter angewendet, wenn der MIME-Type nicht bestimmt
231       werden kann und auf die Einstellung der <directive
232       module="core">DefaultType</directive>-Anweisung zur&uuml;ckf&auml;llt,
233       selbst wenn die <directive
234       module="core">DefaultType</directive>-Einstellung die gleiche ist.</p>
235
236       <p>Wenn Sie jedoch sicherstellen wollen, dass der Filter
237       angewendet wird, sollten Sie den Content-Type z.B. mit
238       <directive module="mod_mime">AddType</directive> oder
239       <directive module="core">ForceType</directive> der Ressource
240       explizit zuordnen. Das Setzen des Content-Types innerhalb
241       eines (nicht-nph) CGI-Skriptes funktioniert ebenfalls
242       zuverl&auml;ssig.</p>
243
244       <p>Die Typ-gebundenen Ausgabefilter werden niemals auf
245       Proxy-Anfragen angewendet.</p>
246     </note>
247 </usage>
248
249 <seealso><directive module="mod_mime">AddOutputFilter</directive></seealso>
250 <seealso><directive module="core">SetOutputFilter</directive></seealso>
251 <seealso><a href="../filter.html">Filter</a></seealso>
252 </directivesynopsis>
253
254 <directivesynopsis>
255 <name>AllowEncodedSlashes</name>
256 <description>Legt fest, ob kodierte Pfadtrennzeichen in URLs durchgereicht
257 werden d&uuml;rfen</description>
258 <syntax>AllowEncodedSlashes On|Off</syntax>
259 <default>AllowEncodedSlashes Off</default>
260 <contextlist><context>server config</context><context>virtual host</context>
261 </contextlist>
262 <compatibility>Verf&uuml;gbar ab Apache 2.0.46</compatibility>
263
264 <usage>
265     <p>Die <directive>AllowEncodedSlashes</directive>-Direktive erlaubt die
266     Verwendung von URLs, welche kodierte Pfadtrennzeichen (<code>%2F</code>
267     f&uuml;r <code>/</code> und auf entsprechenden Systemen zus&auml;tzlich
268     <code>%5C</code> f&uuml;r <code>\</code>) enthalten. Normalerweise werden
269     derartige URLs mit einem 404-Fehler (Nicht gefunden) abgewiesen.</p>
270
271     <p><directive>AllowEncodedSlashes</directive> <code>On</code> ist
272     vor allem in Verbindung mit <code>PATH_INFO</code> hilfreich.</p>
273
274     <note><title>Anmerkung</title>
275       <p>Das Erlauben von Schr&auml;gstrichen impliziert <em>nicht</em> deren
276       <em>Dekodierung</em>. Vorkommen von <code>%2F</code> oder <code>%5C</code>
277       (<em>nur</em> auf entsprechenden Systemen) werden unver&auml;ndert in der
278       ansonsten dekodierten URL belassen.</p>
279     </note>
280 </usage>
281 <seealso><directive module="core">AcceptPathInfo</directive></seealso>
282 </directivesynopsis>
283
284 <directivesynopsis>
285 <name>AllowOverride</name>
286 <description>Direktiven-Typen, die in <code>.htaccess</code>-Dateien
287 erlaubt sind.</description>
288 <syntax>AllowOverride All|None|<var>Direktiven-Typ</var>
289 [<var>Direktiven-Typ</var>] ...</syntax>
290 <default>AllowOverride All</default>
291 <contextlist><context>directory</context></contextlist>
292
293 <usage>
294     <p>Wenn der Server eine <code>.htaccess</code>-Datei (wie durch
295     <directive module="core">AccessFileName</directive> definiert)
296     findet, muss er wissen, welche in der Datei angegebenen Direktiven
297     fr&uuml;here Konfigurationsanweisungen &uuml;berschreiben
298     d&uuml;rfen.</p>
299
300     <note><title>Nun in &lt;Directory&gt;-Abschnitten verf&uuml;gbar</title>
301     <directive>AllowOverride</directive> ist nur in <directive
302     type="section" module="core">Directory</directive>-Abschnitten
303     g&uuml;ltig, nicht in <directive type="section"
304     module="core">Location</directive>- oder <directive type="section"
305     module="core">Files</directive>-Abschnitten.
306     </note>
307
308     <p>Wenn diese Anweisung auf <code>None</code> gesetzt wird, dann
309     werden <a href="#accessfilename">.htaccess</a>-Dateien komplett
310     ignoriert. In diesem Fall wird der Server nicht einmal versuchen,
311     die <code>.htaccess</code>-Dateien im Dateisystem zu lesen.</p>
312
313     <p>Wenn diese Anweisung auf <code>All</code> gesetzt wird, dann
314     ist jede Direktive in den <code>.htaccess</code>-Dateien erlaubt,
315     die den <a href="directive-dict.html#Context">Kontext</a>
316     .htaccess besitzt.</p>
317
318     <p>Der <var>Direktiven-Typ</var> kann eine der folgenden
319     Anweisungsgruppen sein.</p>
320
321     <dl>
322       <dt>AuthConfig</dt>
323
324       <dd>
325       Erlaubt die Verwendung von Autorisierungs-Anweisungen (<directive
326       module="mod_authn_dbm">AuthDBMGroupFile</directive>,
327       <directive module="mod_authn_dbm">AuthDBMUserFile</directive>,
328       <directive module="mod_authz_groupfile">AuthGroupFile</directive>,
329       <directive module="core">AuthName</directive>,
330       <directive module="core">AuthType</directive>, <directive
331       module="mod_authn_file">AuthUserFile</directive>, <directive
332       module="core">Require</directive> <em>usw.</em>).</dd>
333
334       <dt>FileInfo</dt>
335
336       <dd>
337       Erlaubt die Verwendung von Direktiven zur Steuerung der
338       Dokumenttypen (<directive
339       module="core">DefaultType</directive>, <directive
340       module="core">ErrorDocument</directive>, <directive
341       module="core">ForceType</directive>, <directive
342       module="mod_negotiation">LanguagePriority</directive>,
343       <directive module="core">SetHandler</directive>, <directive
344       module="core">SetInputFilter</directive>, <directive
345       module="core">SetOutputFilter</directive>, und
346       <module>mod_mime</module>-Direktiven Add* und Remove*
347       <em>usw.</em>).</dd>
348
349       <dt>Indexes</dt>
350
351       <dd>
352       Erlaubt die Verwendung von Direktiven zur Steuerung von
353       Verzeichnisindizes (<directive
354       module="mod_autoindex">AddDescription</directive>,
355       <directive module="mod_autoindex">AddIcon</directive>, <directive
356       module="mod_autoindex">AddIconByEncoding</directive>,
357       <directive module="mod_autoindex">AddIconByType</directive>,
358       <directive module="mod_autoindex">DefaultIcon</directive>, <directive
359       module="mod_dir">DirectoryIndex</directive>, <directive
360       module="mod_autoindex">FancyIndexing</directive>, <directive
361       module="mod_autoindex">HeaderName</directive>, <directive
362       module="mod_autoindex">IndexIgnore</directive>, <directive
363       module="mod_autoindex">IndexOptions</directive>, <directive
364       module="mod_autoindex">ReadmeName</directive>
365       <em>usw.</em>).</dd>
366
367       <dt>Limit</dt>
368
369       <dd>
370       Erlaubt die Verwendung von Direktiven zur Steuerung des
371       Zugriffs von Hosts (<directive
372       module="mod_authz_host">Allow</directive>, <directive
373       module="mod_authz_host">Deny</directive> und <directive
374       module="mod_authz_host">Order</directive>).</dd>
375
376       <dt>Options</dt>
377
378       <dd>
379       Erlaubt die Verwendung von Direktiven zur Steuerung spezieller
380       Verzeichniseigenschaften (<directive module="core">Options</directive>
381       und <directive module="mod_include">XBitHack</directive>).</dd>
382     </dl>
383
384     <p>Beispiel:</p>
385
386     <example>
387       AllowOverride AuthConfig Indexes
388     </example>
389 </usage>
390
391 <seealso><directive module="core">AccessFileName</directive></seealso>
392 <seealso><a href="../configuring.html">Konfigurationsdateien</a></seealso>
393 <seealso><a href="../howto/htaccess.html">.htaccess-Dateien</a></seealso>
394 </directivesynopsis>
395
396 <directivesynopsis>
397 <name>AuthName</name>
398 <description>Autorisierungsbereich zur Verwendung in der
399 HTTP-Authentisierung</description>
400 <syntax>AuthName <var>auth-Bereich</var></syntax>
401 <contextlist><context>directory</context><context>.htaccess</context>
402 </contextlist>
403 <override>AuthConfig</override>
404
405 <usage>
406     <p>Die Direktive legt den Namen des Autorisierungsbereiches
407     <transnote>Der Autorisierungsbereich wird auch Realm genannt.</transnote>
408     f&uuml;r ein Verzeichnis fest. Dieser Realm wird dem Client mitgeteilt,
409     damit der Anwender wei&szlig;, welchen Benutzernamen und welches Passwort
410     er zu &uuml;bermitteln hat. <directive>AuthName</directive> akzeptiert ein
411     Argument. Falls der Name des Realm Leerzeichen enth&auml;lt, muss er in
412     Anf&uuml;hrungszeichen eingeschlossen werden. Um zu funktionieren, muss
413     die Anweisung von den Direktiven <directive
414     module="core">AuthType</directive> und <directive
415     module="core">Require</directive> sowie von
416     Direktiven wie <directive module="mod_authn_file">AuthUserFile</directive>
417     und <directive module="mod_authz_groupfile">AuthGroupFile</directive>
418     begleitet werden.</p>
419
420    <p>Beispiel:</p>
421
422    <example>
423      AuthName "Top Secret"
424    </example>
425
426     <p>Die <code>AuthName</code> &uuml;bergebene Zeichenkette ist das,
427     was in dem von den meisten Browsern angebotenen Passwort-Dialog
428     angezeigt wird.</p>
429 </usage>
430 <seealso><a
431     href="../howto/auth.html">Authentisierung, Autorisierung und
432     Zugriffskontrolle</a></seealso>
433 </directivesynopsis>
434
435 <directivesynopsis>
436 <name>AuthType</name>
437 <description>Art der Authentisierung</description>
438 <syntax>AuthType Basic|Digest</syntax>
439 <contextlist><context>directory</context><context>.htaccess</context>
440 </contextlist>
441 <override>AuthConfig</override>
442
443 <usage>
444     <p>Die Direktive w&auml;hlt die Art der Benutzer-Authentisierung
445     f&uuml;r ein Verzeichnis aus. Derzeit sind lediglich <code>Basic</code>
446     und <code>Digest</code> implementiert.
447     Um zu funktionieren, muss die Anweisung von den Direktiven <directive
448     module="core">AuthName</directive> und <directive
449     module="core">Require</directive> sowie von
450     Direktiven wie <directive module="mod_authn_file">AuthUserFile</directive>
451     und <directive module="mod_authz_groupfile">AuthGroupFile</directive>
452     begleitet werden.</p>
453 </usage>
454 <seealso><a href="../howto/auth.html">Authentisierung, Autorisierung und
455     Zugriffskontrolle</a></seealso>
456 </directivesynopsis>
457
458 <directivesynopsis>
459 <name>CGIMapExtension</name>
460 <description>Technik zur Bestimmung des Interpreters f&uuml;r
461 CGI-Skripte</description>
462 <syntax>CGIMapExtension <var>CGI-Pfad</var> <var>.Endung</var></syntax>
463 <contextlist><context>directory</context><context>.htaccess</context>
464 </contextlist>
465 <override>FileInfo</override>
466 <compatibility>ausschlie&szlig;lich NetWare</compatibility>
467
468 <usage>
469     <p>Die Direktive wird zur Steuerung verwendet, wie Apache
470     den Interpreter ermittelt, der zur Ausf&uuml;hrung von
471     CGI-Skripten verwendet wird. Beispielsweise bestimmt die Angabe
472     von <code>CGIMapExtension sys:\foo.nlm .foo</code>, dass
473     alle CGI-Scripte mit der Endung <code>.foo</code> an den
474     FOO-Interpreter &uuml;bergeben werden.</p>
475 </usage>
476 </directivesynopsis>
477
478 <directivesynopsis>
479 <name>ContentDigest</name>
480 <description>Aktiviert die Generierung von <code>Content-MD5</code>
481 HTTP-Response-Headern</description>
482 <syntax>ContentDigest On|Off</syntax>
483 <default>ContentDigest Off</default>
484 <contextlist><context>server config</context><context>virtual host</context>
485 <context>directory</context><context>.htaccess</context>
486 </contextlist>
487 <override>Options</override>
488 <status>Experimental</status>
489
490 <usage>
491     <p>Die Direktive aktiviert die Generierung von
492     <code>Content-MD5</code>-Headern, wie sie in RFC1864 bzw. RFC2068
493     definiert sind.</p>
494
495     <p>MD5 ist ein Algorithmus zur Berechnung eines "Datenextrakts"
496     (zuweilen "Fingerabdruck" genannt) <transnote>Der "Datenextrakt" wird im
497     Englischen als "message digest" oder "fingerprint" bezeichnet.</transnote>
498     aus beliebig langen Daten. Es gilt als zuverl&auml;ssig, dass
499     Ver&auml;nderungen an den Daten sich in Ver&auml;nderungen des
500     Extrakts wiederspiegeln.</p>
501
502     <p>Der <code>Content-MD5</code>-Header bietet eine
503     End-to-End-Integrit&auml;tspr&uuml;fung (MIC) <transnote>MIC steht f&uuml;r
504     "message integrity check".</transnote> des Daten-Inhalts. Ein Proxy oder
505     Client kann diesen Header pr&uuml;fen, um zuf&auml;llige Ver&auml;nderungen
506     des Entity-Inhalts bei der &Uuml;bertragung festzustellen.
507     Beispielheader:</p>
508
509     <example>
510       Content-MD5: AuLb7Dp1rqtRtxz2m9kRpA==
511     </example>
512
513     <p>Beachten Sie bitte, dass dies Performanceprobleme auf Ihrem
514     System verursachen kann, da der Extrakt bei jeder Anfrage
515     berechnet wird (der Wert wird nicht zwischengespeichert).</p>
516
517     <p><code>Content-MD5</code> wird nur f&uuml;r Dokumente gesendet,
518     die von <module>core</module> bedient werden, nicht jedoch bei
519     Modulen. SSI-Dokumente, CGI-Skript-Ausgaben und Byte-Range-Antworten
520     besitzen diesen Header beispielsweise nicht.</p>
521 </usage>
522 </directivesynopsis>
523
524 <directivesynopsis>
525 <name>DefaultType</name>
526 <description>MIME-Content-Type, der gesendet wird, wenn der Server den Typ
527 nicht auf andere Weise ermitteln kann.</description>
528 <syntax>DefaultType <var>MIME-Type</var></syntax>
529 <default>DefaultType text/plain</default>
530 <contextlist><context>server config</context><context>virtual host</context>
531 <context>directory</context><context>.htaccess</context>
532 </contextlist>
533 <override>FileInfo</override>
534
535 <usage>
536     <p>Es kann vorkommen, dass der Server ein Dokument ausliefern muss,
537     dessen Typ er nicht mit Hilfe seiner MIME-Type-Zuordnungen bestimmen
538     kann.</p>
539
540     <p>Der Server muss den Client &uuml;ber den Content-Type des
541     Dokumentes informieren. Daher verwendet er im Falle eines
542     unbekannten Typs die <code>DefaultType</code>-Einstellung.
543     Zum Beispiel:</p>
544
545     <example>
546       DefaultType image/gif
547     </example>
548
549     <p>w&auml;re angemessen f&uuml;r ein Verzeichnis, das viele GIF-Bilder
550     enth&auml;lt, deren Dateinamen nicht Endung <code>.gif</code>
551     besitzen.</p>
552
553     <p>Beachten Sie bitte, dass die Direktive anders als <directive
554     module="core">ForceType</directive> lediglich den Standard-MIME-Type
555     bestimmt. Alle anderen MIME-Type-Definitionen, einschlie&szlig;lich
556     Dateierweiterungen, die den Medien-Typ anzeigen k&ouml;nnen,
557     &uuml;berschreiben diese Voreinstellung.</p>
558 </usage>
559 </directivesynopsis>
560
561 <directivesynopsis type="section">
562 <name>Directory</name>
563 <description>Umschlie&szlig;t eine Gruppe von Direktiven, die nur auf
564 das genannte Verzeichnis des Dateisystems und Unterverzeichnisse angewendet
565 werden</description>
566 <syntax>&lt;Directory <var>Verzeichnispfad</var>&gt;
567 ... &lt;/Directory&gt;</syntax>
568 <contextlist><context>server config</context><context>virtual host</context>
569 </contextlist>
570
571 <usage>
572     <p><directive type="section">Directory</directive> und
573     <code>&lt;/Directory&gt;</code> werden dazu verwendet, eine Gruppe
574     von Direktiven zusammenzufassen, die nur f&uuml;r das genannte
575     Verzeichnis und dessen Unterverzeichnisse gelten. Jede Direktive,
576     die im Verzeichnis-Kontext erlaubt ist, kann verwendet werden.
577     <var>Verzeichnispfad</var> ist entweder der vollst&auml;ndige Pfad zu
578     einem Verzeichnis oder eine Zeichenkette mit Platzhaltern wie sie von der
579     Unix-Shell zum Abgleich verwendet werden. In einer Zeichenkette
580     mit Platzhaltern <transnote>sogenannte wild-cards</transnote> entspricht
581     <code>?</code> einem einzelnen Zeichen und <code>*</code> einer
582     Zeichenkette beliebiger L&auml;nge. Sie k&ouml;nnen auch auch
583     <code>[]</code>-Zeichenbereiche verwenden. Keiner der Platzhalter
584     entspricht dem Zeichen "/". Daher passt <code>&lt;Directory
585     /*/public_html&gt;</code> nicht auf <code>/home/user/public_html</code>,
586     <code>&lt;Directory /home/*/public_html&gt;</code> jedoch tut es.
587     Beispiel:</p>
588
589     <example>
590       &lt;Directory /usr/local/httpd/htdocs&gt;<br />
591       <indent>
592         Options Indexes FollowSymLinks<br />
593       </indent>
594       &lt;/Directory&gt;
595     </example>
596
597     <note>
598       <p>Seien Sie vorsichtig mit den <var>Verzeichnispfad</var>-Argumenten.
599       Sie m&uuml;ssen buchst&auml;blich mit dem Dateisystempfad
600       &uuml;bereinstimmen, den der Apache f&uuml;r den Zugriff auf die
601       Dateien verwendet. Direktiven, die f&uuml;r ein bestimmtes
602       Verzeichnis gelten, gelten nicht f&uuml;r Dateien in dem Verzeichnis,
603       auf die &uuml;ber einen anderen Pfad zugegriffen wird, wie z.B.
604       &uuml;ber verschiedene symbolische Links.</p>
605     </note>
606
607     <p>Erweiterte regul&auml;re Ausdr&uuml;cke k&ouml;nnen ebenfalls
608     verwendet werden, indem das Zeichen <code>~</code> hinzugef&uuml;gt
609     wird. Beispielsweise w&uuml;rde</p>
610
611     <example>
612       &lt;Directory ~ "^/www/.*/[0-9]{3}"&gt;
613     </example>
614
615     <p>auf Verzeichnisse in <code>/www/</code> passen, die aus drei
616     Zahlen bestehen.</p>
617
618     <p>Wenn mehrere <directive type="section">Directory</directive>-Abschnitte
619     (ohne regul&auml;re Ausdr&uuml;cke) auf ein Verzeichnis (oder
620     ein ihm &uuml;bergeordnetes Verzeichnis) passen, welches ein Dokument
621     enth&auml;lt, dann werden die Direktiven der Reihe nach, angefangen
622     beim k&uuml;rzesten passenden Muster, vermischt mit den Direktiven
623     aus den <a href="#accessfilename">.htaccess</a>-Dateien, angewendet.
624     Beispiel:</p>
625
626     <example>
627       &lt;Directory /&gt;<br />
628       <indent>
629         AllowOverride None<br />
630       </indent>
631       &lt;/Directory&gt;<br />
632       <br />
633       &lt;Directory /home/&gt;<br />
634       <indent>
635         AllowOverride FileInfo<br />
636       </indent>
637       &lt;/Directory&gt;
638     </example>
639
640     <p>Beim Zugriff auf das Dokument <code>/home/web/dir/doc.html</code>
641     sind die einzelnen Schritte:</p>
642
643     <ul>
644       <li>Wende die Direktive <code>AllowOverride None</code> an
645       (deaktiviere <code>.htaccess</code>-Dateien).</li>
646
647       <li>Wende die Direktive <code>AllowOverride FileInfo</code>
648       (auf das Verzeichnis <code>/home</code>) an.</li>
649
650       <li>Wende jede <code>FileInfo</code>-Direktive aus
651       <code>/home/.htaccess</code>, <code>/home/web/.htaccess</code> und
652       <code>/home/web/dir/.htaccess</code> der Reihe nach an.</li>
653     </ul>
654
655     <p>Regul&auml;re Ausdr&uuml;cke werden solange nicht ber&uuml;cksichtigt,
656     bis alle normalen Abschnitte angewendet wurden. Anschlie&szlig;end
657     werden alle regul&auml;ren Ausdr&uuml;cke in der Reihenfolge
658     gepr&uuml;ft, in der sie in der Konfigurationsdatei auftauchen.
659     Beispielsweise wird bei</p>
660
661     <example>
662       &lt;Directory ~ abc$&gt;<br />
663       <indent>
664         # ... hier die Direktiven ...<br />
665       </indent>
666       &lt;/Directory&gt;
667     </example>
668
669     <p>der Abschnitt mit dem regul&auml;ren Ausdruck nicht
670     ber&uuml;cksichtigt, bis alle normalen
671     <directive type="section">Directory</directive>-Abschnitte und
672     <code>.htaccess</code>-Dateien angewendet wurden. Dann erst wird
673     der regul&auml;re Ausdruck mit <code>/home/abc/public_html/abc</code>
674     abgeglichen und der entsprechende <directive
675     type="section">Directory</directive>-Abschnitt angewendet.</p>
676
677     <p><strong>Beachten Sie bitte, dass der vom Apache voreingestellte
678     Zugriff f&uuml;r <code>&lt;Directory /&gt;</code>
679     <code>Allow from All</code> ist. Das bedeutet, dass der Apache
680     jede Datei ausliefert, die durch eine URL abgebildet wird. Es wird
681     empfohlen, dass Sie dies durch einen Block wie</strong></p>
682
683     <example>
684       &lt;Directory /&gt;<br />
685       <indent>
686         Order Deny,Allow<br />
687         Deny from All<br />
688       </indent>
689       &lt;/Directory&gt;
690     </example>
691
692     <p><strong>&auml;ndern und anschlie&szlig;end f&uuml;r
693     Verzeichnisse &uuml;berschreiben, die Sie verf&uuml;gbar machen
694     <em>wollen</em>. F&uuml;r weitere Einzelheiten lesen Sie bitte
695     die Seite zu den <a
696     href="../misc/security_tips.html">Sicherheitshinweisen</a>.</strong></p>
697
698     <p>Die Verzeichnisabschnitte erscheinen in der Datei
699     <code>httpd.conf</code>. <directive
700     type="section">Directory</directive>-Direktiven d&uuml;rfen nicht
701     ineinander verschachtelt werden oder innerhalb von <directive module="core"
702     type="section">Limit</directive>- oder <directive module="core"
703     type="section">LimitExcept</directive>-Abschnitten auftauchen.</p>
704 </usage>
705 <seealso><a href="../sections.html">Wie die Abschnitte &lt;Directory&gt;,
706     &lt;Location&gt; und &lt;Files&gt; arbeiten</a> f&uuml;r eine
707     Erl&auml;uterung, wie diese verschiedenen Abschnitte miteinander
708     kombiniert werden, wenn eine Anfrage empfangen wird</seealso>
709 </directivesynopsis>
710
711 <directivesynopsis type="section">
712 <name>DirectoryMatch</name>
713 <description>Umschlie&szlig;t eine Gruppe von Direktiven, die auf
714   Verzeichnisse des Dateisystems und ihre Unterverzeichnisse abgebildet
715   werden, welche auf einen regul&auml;ren Ausdruck passen</description>
716 <syntax>&lt;DirectoryMatch <var>regex</var>&gt;
717 ... &lt;/DirectoryMatch&gt;</syntax>
718 <contextlist><context>server config</context><context>virtual host</context>
719 </contextlist>
720
721 <usage>
722     <p><directive type="section">DirectoryMatch</directive> und
723     <code>&lt;/DirectoryMatch&gt;</code> werden dazu verwendet, eine
724     Gruppe von Direktiven zusammenzufassen, die nur f&uuml;r das
725     genannte Verzeichnis und dessen Unterverzeichnisse gelten, genauso
726     wie bei <directive module="core" type="section">Directory</directive>.
727     Als Argument dient jedoch ein regul&auml;rer Ausdruck.
728     Beispielsweise w&uuml;rde</p>
729
730     <example>
731       &lt;DirectoryMatch "^/www/.*/[0-9]{3}"&gt;
732     </example>
733
734     <p>auf Verzeichnisse in <code>/www/</code> passen, die aus drei
735     Zeichen bestehen.</p>
736 </usage>
737 <seealso><directive type="section" module="core">Directory</directive>
738     f&uuml;r eine Beschreibung, wie regul&auml;re Ausdr&uuml;cke mit
739     normalen <directive type="section">Directory</directive>-Anweisungen
740     vermischt werden.</seealso>
741 <seealso><a href="../sections.html">Wie die Abschnitte &lt;Directory&gt;,
742     &lt;Location&gt; und &lt;Files&gt; arbeiten</a> f&uuml;r eine
743     Erl&auml;uterung, wie diese verschiedenen Abschnitte miteinander
744     kombiniert werden, wenn eine Anfrage empfangen wird</seealso>
745 </directivesynopsis>
746
747 <directivesynopsis>
748 <name>DocumentRoot</name>
749 <description>Verzeichnis, welches den Haupt-Dokumentenbaum bildet, der im
750 Web sichtbar ist.</description>
751 <syntax>DocumentRoot <var>Verzeichnis</var></syntax>
752 <default>DocumentRoot /usr/local/apache/htdocs</default>
753 <contextlist><context>server config</context><context>virtual host</context>
754 </contextlist>
755
756 <usage>
757     <p>Die Direktive setzt das Verzeichnis, von dem aus
758     <code>httpd</code> Dateien ausliefert. Sofern nicht eine Direktive
759     wie <directive module="mod_alias">Alias</directive> greift, h&auml;ngt
760     der Server Pfade aus der angeforderten URL an das Wurzelverzeichnis
761     an, um den Pfad zum Dokument zu bilden. Beispiel:</p>
762
763     <example>
764       DocumentRoot /usr/web
765     </example>
766
767     <p>Damit bezieht sich ein Zugriff auf
768     <code>http://www.my.host.com/index.html</code> auf
769     <code>/usr/web/index.html</code>. Wenn das <var>Verzeichnis</var> nicht
770     absolut angegeben ist, wird es relativ zu <directive
771     module="core">ServerRoot</directive> betrachtet.</p>
772
773     <p><directive>DocumentRoot</directive> sollte ohne einen
774     Schr&auml;gstrich am Ende angegeben werden.</p>
775 </usage>
776 <seealso><a href="../urlmapping.html">URLs auf das Dateisystem
777 abbilden</a></seealso>
778 </directivesynopsis>
779
780 <directivesynopsis>
781 <name>EnableMMAP</name>
782 <description>Verwende Memory-Mapping, um Dateien w&auml;hrend der
783 Auslieferung zu lesen</description>
784 <syntax>EnableMMAP On|Off</syntax>
785 <default>EnableMMAP On</default>
786 <contextlist><context>server config</context><context>virtual host</context>
787 <context>directory</context><context>.htaccess</context>
788 </contextlist>
789 <override>FileInfo</override>
790
791 <usage>
792     <p>Die Direktive steuert, ob <code>httpd</code> Memory-Mapping verwenden
793     darf, wenn er w&auml;hrend der Auslieferung den Inhalt einer
794     Datei lesen muss. Wenn die Bearbeitung einer Anfrage es erfordert,
795     auf die Daten in einer Datei zuzugreifen -- zum Beispiel bei der
796     Auslieferung einer mittels <module>mod_include</module> serverseitig
797     analysierten Datei --, dann verwendet der Apache standardm&auml;&szlig;ig
798     Memory-Mapping f&uuml;r diese Datei, sofern das Betriebssystem es
799     unterst&uuml;tzt.</p>
800
801     <p>Memory-Mapping bedeutet zuweilen eine Performanceverbesserung.
802     In einigen Umgebungen ist es jedoch besser, Memory-Mapping zu
803     deaktivieren, um Problemen w&auml;hrend des Betriebs vorzubeugen:</p>
804
805     <ul>
806     <li>Bei einigen Multiprozessorsystemen kann Memory-Mapping die
807     Performance von <code>httpd</code> reduzieren.</li>
808     <li>Bei einem per NFS eingebundenen <directive
809     module="core">DocumentRoot</directive> kann <code>httpd</code> mit einem
810     Segmentierungsfehler <transnote>ein sogenannter "segmentation
811     fault"</transnote> abst&uuml;rzen, wenn eine Datei gel&ouml;scht oder
812     gek&uuml;rzt wird, w&auml;hrend <code>httpd</code> sie im Speicher
813     abbildet.</li>
814     </ul>
815
816     <p>Bei Serverkonfigurationen, die f&uuml;r dieses Problem
817     anf&auml;llig sind, sollten Sie das Memory-Mapping f&uuml;r
818     auszuliefernde Dateien deaktivieren, indem Sie schreiben:</p>
819
820     <example>
821       EnableMMAP Off
822     </example>
823
824     <p>Bei per NFS eingebundenen Dateien kann diese Funktion
825     explizit f&uuml;r die st&ouml;renden Dateien deaktiviert werden,
826     indem Sie angeben:</p>
827
828     <example>
829       &lt;Directory "/pfad-zu-den-nfs-dateien"&gt;
830       <indent>
831         EnableMMAP Off
832       </indent>
833       &lt;/Directory&gt;
834     </example>
835 </usage>
836 </directivesynopsis>
837
838 <directivesynopsis>
839 <name>EnableSendfile</name>
840 <description>Verwende die sendfile-Unterst&uuml;tzung des Kernels, um
841 Dateien an den Client auszuliefern</description>
842 <syntax>EnableSendfile On|Off</syntax>
843 <default>EnableSendfile On</default>
844 <contextlist><context>server config</context><context>virtual host</context>
845 <context>directory</context><context>.htaccess</context>
846 </contextlist>
847 <override>FileInfo</override>
848 <compatibility>Verf&uuml;gbar ab Apache Version 2.0.44</compatibility>
849
850 <usage>
851     <p>Die Direktive steuert, ob <code>httpd</code> die
852     sendfile-Unterst&uuml;tzung des Kernels verwenden kann, um
853     Dateiinhalte an den Client zu &uuml;bermitteln. Wenn die Bearbeitung
854     einer Anfrage keinen Zugriff auf die Daten in der Datei erfordert --
855     zum Beispiel bei der Auslieferung einer statischen Datei -- und das
856     Betriebssystem es unterst&uuml;tzt, verwendet der Apache
857     standardm&auml;&szlig;ig sendfile, um den Dateiinhalt zu
858     &uuml;bertragen, ohne die Datei jemals zu lesen.</p>
859
860     <p>Der sendfile-Mechanismus vermeidet getrennte Lese- und
861     Sendeoperationen sowie Puffer-Zuweisungen. Bei einigen Plattformen bzw.
862     Dateisystemen deaktivieren Sie diese Funktion jedoch besser, um Probleme
863     w&auml;hrend des Betriebs zu vermeiden:</p>
864
865     <ul>
866     <li>Einige Plattformen besitzen u.U. eine fehlerhafte
867     sendfile-Unterst&uuml;tzung, die das Erstellungssystem nicht erkennt,
868     insbesondere wenn die Bin&auml;rdateien auf einem anderen Rechner erstellt
869     und auf eine solche Maschine mit fehlerhafter sendfile-Unterst&uuml;tzung
870     &uuml;bertragen wurden.</li>
871     <li>Bei einem &uuml;ber das Netzwerk eingebundenen <directive
872     module="core">DocumentRoot</directive> (z.B. NFS oder SMB) ist der
873     Kernel m&ouml;glicherweise nicht in der Lage, die Netzwerkdatei
874     &uuml;ber seinen eigenen Cache zu bedienen.</li>
875     <li>Unter Linux l&ouml;st die Verwendung von <code>sendfile</code>
876     in Verbindung mit bestimmten Netzwerkkarten und IPv6
877     TCP-Checksummenfehler aus.</li>
878     </ul>
879
880     <p>Bei Serverkonfigurationen, die f&uuml;r dieses Problam
881     anf&auml;llig sind, sollten die diese Funktion deaktivieren, indem
882     Sie schreiben:</p>
883
884     <example>
885       EnableSendfile Off
886     </example>
887
888     <p>Bei per NFS oder SMB eingebundenen Dateien kann diese Funktion
889     explizit f&uuml;r die st&ouml;renden Dateien deaktiviert werden, indem
890     Sie angeben:</p>
891
892     <example>
893       &lt;Directory "/pfad-zu-den-nfs-dateien"&gt;
894       <indent>
895         EnableSendfile Off
896       </indent>
897       &lt;/Directory&gt;
898     </example>
899 </usage>
900 </directivesynopsis>
901
902 <directivesynopsis>
903 <name>ErrorDocument</name>
904 <description>Das, was der Server im Fehlerfall an den Client
905 zur&uuml;ckgibt</description>
906 <syntax>ErrorDocument <var>Fehlercode</var> <var>Dokument</var></syntax>
907 <contextlist><context>server config</context><context>virtual host</context>
908 <context>directory</context><context>.htaccess</context>
909 </contextlist>
910 <override>FileInfo</override>
911 <compatibility>Die Syntax der Anf&uuml;hrungszeichen bei Textnachrichten hat
912 sich im Apache 2.0 ge&auml;ndert</compatibility>
913
914 <usage>
915     <p>Im Falle eines Problems oder Fehlers kann der Apache
916     konfiguriert werden, eine der vier Aktionen auszuf&uuml;hren:</p>
917
918     <ol>
919       <li>Ausgabe einer einfachen, hartkodierten Fehlermeldung</li>
920
921       <li>Ausgabe einer angepassten Meldung</li>
922
923       <li>Umleitung zu einem lokalen <var>URL-Pfad</var> der das
924       Problem bzw. den Fehler behandelt</li>
925
926       <li>Umleitung zu einer externen <var>URL</var>, die das Problem
927       bzw. den Fehler behandelt</li>
928     </ol>
929
930     <p>Die erste Option ist Voreinstellung, w&auml;hrend die Optionen
931     2 bis 4 &uuml;ber die Direktive <directive>ErrorDocument</directive>
932     eingestellt werden, welcher der HTTP-Statuscode und eine
933     URL oder Nachricht folgen. Abh&auml;ngig vom Problem bzw. Fehler bietet
934     der Apache manchmal zus&auml;tzliche Informationen an.</p>
935
936     <p>URLs k&ouml;nnen bei lokalen Adressen mit einem Schr&auml;gstrich
937     (/) beginnen oder eine komplette URL bilden, die der Client
938     aufl&ouml;sen kann. Alternativ kann eine Nachricht f&uuml;r die
939     Anzeige im Browser angeboten werden. Beispiel:</p>
940
941     <example>
942       ErrorDocument 500 http://foo.example.com/cgi-bin/tester<br />
943       ErrorDocument 404 /cgi-bin/falsche_urls.pl<br />
944       ErrorDocument 401 /info_zur_anmeldung.html<br />
945       ErrorDocument 403 "Der Zugriff ist nicht erlaubt."
946     </example>
947
948     <p>Wenn Sie eine <directive>ErrorDocument</directive>-Anweisung
949     angeben, die auf eine entfernte URL weist (d.h. irgendetwas mit der
950     Methode <code>http</code> davor), beachten Sie bitte, dass der Apache
951     eine Umleitung zum Client sendet, um diesem mitzuteilen, wo das
952     Dokument zu finden ist, auch wenn das Dokument letztlich wieder zum
953     gleichen Server f&uuml;hrt. Das hat mehrere Auswirkungen. Die
954     wichtigste ist, dass der Client nicht den Original-Statuscode
955     erh&auml;lt sondern statt dessen einen Umleitungs-Statuscode. Dies
956     wiederum kann Web-Robots und andere Clients verwirren, die den
957     Statuscode dazu verwenden, herauszufinden ob eine URL g&uuml;ltig ist.
958     Wenn Sie eine entfernte URL in einer Anweisung
959     <code>ErrorDocument 401</code> verwenden, wird der Client
960     dar&uuml;ber hinaus nicht wissen, dass er den Benutzer zur Eingabe
961     eines Passwortes auffordern muss, da er den Statuscode 401 nicht
962     erh&auml;lt. <strong>Deshalb m&uuml;ssen Sie sich auf ein lokales
963     Dokument beziehen, wenn Sie eine Anweisung <code>ErrorDocument
964     401</code> verwenden.</strong></p>
965
966     <p>Der Microsoft Internet Explorer (MSIE) ignoriert
967     standardm&auml;&szlig;ig serverseitig generierte Fehlermeldungen, wenn
968     sie "zu kurz" sind und ersetzt sie durch eigene "freundliche"
969     Fehlermeldungen. Die Gr&ouml;&szlig;e variiert abh&auml;ngig von der
970     Art des Fehlers, im Allgemeinen zeigt der MSIE jedoch den
971     serverseitig generierten Fehler, anstatt ihn zu verstecken, wenn Ihr
972     Fehlerdokument gr&ouml;&szlig;er als 512 Bytes ist. Weitere Informationen
973     sind im Artikel  <a
974     href="http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807"
975     >Q294807</a> in der Microsoft Knowledgebase article verf&uuml;gbar.</p>
976
977     <p>In Versionen vor 2.0 wurden Meldungen durch ein einzelnes
978     vorangestelltes Anf&uuml;hrungszeichen (") erkannt.</p>
979 </usage>
980
981 <seealso><a href="../custom-error.html">Dokumentation zu individuellen
982 Fehlermeldungen</a></seealso>
983 </directivesynopsis>
984
985 <directivesynopsis>
986 <name>ErrorLog</name>
987 <description>Ablageort, an dem der Server Fehler protokolliert</description>
988 <syntax> ErrorLog <var>Dateiname</var>|syslog[:<var>facility</var>]</syntax>
989 <default>ErrorLog logs/error_log (Unix) ErrorLog logs/error.log (Windows and
990   OS/2)</default>
991 <contextlist><context>server config</context><context>virtual host</context>
992 </contextlist>
993
994 <usage>
995     <p>Die Direktive <directive>ErrorLog</directive> bestimmt den Namen
996     der Datei, in welcher der Server alle auftretenden Fehler protokolliert.
997     Wenn <var>Dateiname</var> nicht absolut ist, wird er relativ zu <directive
998     module="core">ServerRoot</directive> betrachtet.</p>
999
1000     <example><title>Beispiel</title>
1001     ErrorLog /var/log/httpd/error_log
1002     </example>
1003
1004     <p>Wenn der <var>Dateiname</var> mit einem senkrechten Strich (|,
1005     engl.: Pipe) beginnt, wird angenommen, dass es sich um einen Befehl
1006     handelt, der ausgef&uuml;hrt wird, um das Fehlerprotokolls zu
1007     verarbeiten.</p>
1008
1009     <example><title>Beispiel</title>
1010     ErrorLog "|/usr/local/bin/httpd_errors"
1011     </example>
1012
1013     <p>Die Verwendung von <code>syslog</code> anstelle eines Dateinamens
1014     aktiviert die Protokollierung mittels syslogd(8), sofern das System
1015     es unterst&uuml;tzt. Als Voreinstellung wird der syslog-Typ (syslog
1016     facility) <code>local7</code> verwendet, Sie k&ouml;nnen dies jedoch
1017     auch &uuml;berschreiben, indem Sie die Syntax
1018     <code>syslog:<var>facility</var></code> verwenden, wobei
1019     <var>facility</var> einer der Namen sein kann, die &uuml;blicherweise
1020     in syslog(1) dokumentiert sind.</p>
1021
1022     <example><title>Beispiel</title>
1023     ErrorLog syslog:user
1024     </example>
1025
1026     <p>SICHERHEITSHINWEIS: Lesen Sie das Dokument <a
1027     href="../misc/security_tips.html#serverroot">Sicherheitshinweise</a>
1028     zu Einzelheiten dar&uuml;ber, warum Ihre Sicherheit gef&auml;hrdet
1029     sein kann, wenn das Verzeichnis, in dem die Log-Dateien gespeichert
1030     werden, f&uuml;r jemand anderen, als den Benutzer, der den Server
1031     gestartet hat, beschreibbar ist.</p>
1032
1033     <note type="warning"><title>Anmerkung</title>
1034       <p>Bei der Eingabe eines Dateipfads auf nicht-Unix-Plattformen sollte
1035       darauf geachtet werden, nur (Vorw&auml;rts-)Schr&auml;gstriche zu
1036       verwenden, auch wenn die Plattform r&uuml;ckw&auml;rts gerichtete
1037       Schr&auml;gstriche (Backslashes) erlaubt. Im Allgemeinen ist es eine gute
1038       Idee, innerhalb der Konfigurationsdateien immer
1039       Vorw&auml;rts-Schr&auml;gstriche zu verwenden.</p>
1040     </note>
1041 </usage>
1042 <seealso><directive module="core">LogLevel</directive></seealso>
1043 <seealso><a href="../logs.html">Apache-Log-Dateien</a></seealso>
1044 </directivesynopsis>
1045
1046 <directivesynopsis>
1047 <name>FileETag</name>
1048 <description>Dateiattribute, die zur Erstellung des HTTP-Response-Headers
1049 ETag verwendet werden</description>
1050 <syntax>FileETag <var>Komponente</var> ...</syntax>
1051 <default>FileETag INode MTime Size</default>
1052 <contextlist><context>server config</context><context>virtual host</context>
1053 <context>directory</context><context>.htaccess</context>
1054 </contextlist>
1055 <override>FileInfo</override>
1056
1057 <usage>
1058     <p>Wenn dem Dokument eine Datei zugrundeliegt, bestimmt die Direktive
1059     <directive>FileETag</directive> die Dateiattribute, die zur Erstellung
1060     des HTTP-Response-Headers <code>ETag</code> (Entity-Tag) verwendet
1061     werden. (Der Wert von <code>ETag</code> wird bei der Cache-Verwaltung
1062     zur Einsparung von Netzwerk-Bandbreite benutzt.) Im Apache 1.3.22 und
1063     fr&uuml;her wurde der <code>ETag</code>-Wert <em>stets</em> aus
1064     der I-Node, der Gr&ouml;&szlig;e und dem Datum der letzten
1065     &Auml;nderung (mtime) der Datei gebildet. Die Direktive
1066     <directive>FileETag</directive> erlaubt es Ihnen, zu bestimmen,
1067     welche dieser Eigenschaften -- falls &uuml;berhaupt -- verwendet
1068     werden sollen. Die g&uuml;ltigen Schl&uuml;sselworte lauten:</p>
1069
1070     <dl>
1071      <dt><strong>INode</strong></dt>
1072      <dd>Die I-Node-Nummer wird in die Berechnung mit einbezogen</dd>
1073      <dt><strong>MTime</strong></dt>
1074      <dd>Datum und Uhrzeit der letzten &Auml;nderung werden mit einbezogen</dd>
1075      <dt><strong>Size</strong></dt>
1076      <dd>Die Anzahl der Bytes in der Datei wird mit einbezogen</dd>
1077      <dt><strong>All</strong></dt>
1078      <dd>Alle verf&uuml;gbaren Angaben werden verwendet. Die ist
1079      gleichbedeutend mit:
1080          <example>FileETag INode MTime Size</example></dd>
1081      <dt><strong>None</strong></dt>
1082      <dd>Es wird keine <code>ETag</code>-Angabe in die Antwort eingef&uuml;gt,
1083      wenn dem Dokument eine Datei zugrundeliegt.</dd>
1084     </dl>
1085
1086     <p>Den Schl&uuml;sselw&ouml;rtern <code>INode</code>, <code>MTime</code>
1087     und <code>Size</code> kann entweder ein <code>+</code> oder ein
1088     <code>-</code> vorangestellt werden, was die &Auml;nderung einer
1089     Vorgabe erlaubt, die von einem gr&ouml;&szlig;eren Umfeld
1090     geerbt wurde. Jedes Schl&uuml;selwort ohne ein solches Prefix
1091     hebt die ererbte Einstellung sofort und vollst&auml;ndig auf.</p>
1092
1093     <p>Wenn die Konfiguration f&uuml;r ein Verzeichnis
1094     <code>FileETag&nbsp;INode&nbsp;MTime&nbsp;Size</code> enth&auml;lt
1095     und die eines Unterverzeichnisses <code>FileETag&nbsp;-INode</code>,
1096     dann ist die Einstellung f&uuml;r das Unterverzeichnis (die an
1097     jedes Unter-Unterverzeichnis weitervererbt wird, welches dies nicht
1098     &uuml;berschreibt) &auml;quivalent mit
1099     <code>FileETag&nbsp;MTime&nbsp;Size</code>.</p>
1100 </usage>
1101 </directivesynopsis>
1102
1103 <directivesynopsis type="section">
1104 <name>Files</name>
1105 <description>Enth&auml;lt Direktiven, die sich nur auf passende Dateinamen
1106 beziehen</description>
1107 <syntax>&lt;Files <var>Dateiname</var>&gt; ... &lt;/Files&gt;</syntax>
1108 <contextlist><context>server config</context><context>virtual host</context>
1109 <context>directory</context><context>.htaccess</context>
1110 </contextlist>
1111 <override>All</override>
1112
1113 <usage>
1114     <p>Die Direktive <directive type="section">Files</directive>
1115     begrenzt die Reichweite der enthaltenen Anweisungen auf Dateinamen.
1116     Sie ist vergleichbar mit den Direktiven <directive
1117     module="core" type="section">Directory</directive> und <directive
1118     module="core" type="section">Location</directive>. Sie muss eine
1119     passende <code>&lt;/Files&gt;</code>-Anweisung besitzen.
1120     Die innerhalb dieses Abschnittes angegebenen Direktiven werden auf
1121     jedes Objekt mit einem Basisnamen (letzte Komponente des Dateinamens)
1122     angewendet, der auf die angegebenen Dateinamen passt. <directive
1123     type="section">Files</directive>-Container werden, nachdem die
1124     <directive module="core" type="section">Directory</directive>-Container
1125     und <code>.htaccess</code>-Dateien gelesen sind, jedoch vor den
1126     <directive type="section" module="core">Location</directive>-Containern,
1127     in der Reihenfolge ihres Auftretens ausgef&uuml;hrt. Beachten Sie, dass
1128     <directive type="section">Files</directive>-Anweisungen innerhalb von
1129     <directive type="section" module="core">Directory</directive>-Containern
1130     auftreten k&ouml;nnen, um den Teil des Dateisystems einzuschr&auml;nken,
1131     den sie betreffen.</p>
1132
1133     <p>Das Argument <var>Dateiname</var> kann einen Dateinamen oder eine
1134     Zeichenkette mit Platzhaltern enthalten, wobei <code>?</code> auf ein
1135     einzelnes Zeichen passt und <code>*</code> auf eine beliebige Folge von
1136     Zeichen. Erweiterte regul&auml;re Ausdr&uuml;cke k&ouml;nnen ebenfalls
1137     verwendet werden, indem das Zeichen <code>~</code> hinzugef&uuml;gt wird.
1138     Beispielsweise w&uuml;rde</p>
1139
1140     <example>
1141       &lt;Files ~ "\.(gif|jpe?g|png)$"&gt;
1142     </example>
1143
1144     <p>auf die gebr&auml;uchlichsten Grafikformate im Internet passen.
1145     <directive module="core" type="section">FilesMatch</directive> wird
1146     jedoch bevorzugt.</p>
1147
1148     <p>Beachten Sie bitte, dass die <directive
1149     type="section">Files</directive>-Container anders als <directive
1150     type="section" module="core">Directory</directive>- und <directive
1151     type="section" module="core">Location</directive>-Container innerhalb
1152     von <code>.htaccess</code>-Dateien verwendet werden k&ouml;nnen.
1153     Dies erlaubt den Anwendern auf Dateiebene die Kontrolle &uuml;ber ihre
1154     eigenen Dateien.</p>
1155 </usage>
1156 <seealso><a href="../sections.html">Wie die Abschnitte &lt;Directory&gt;,
1157     &lt;Location&gt; und &lt;Files&gt; arbeiten</a> f&uuml;r eine
1158     Erl&auml;uterung, wie diese verschiedenen Abschnitte miteinander
1159     kombiniert werden, wenn eine Anfrage empfangen wird</seealso>
1160 </directivesynopsis>
1161
1162 <directivesynopsis type="section">
1163 <name>FilesMatch</name>
1164 <description>Enth&auml;lt Direktiven, die f&uuml;r Dateinamen gelten, die
1165   auf einen regul&auml;ren Ausdruck passen</description>
1166 <syntax>&lt;FilesMatch <var>regex</var>&gt; ... &lt;/FilesMatch&gt;</syntax>
1167 <contextlist><context>server config</context><context>virtual host</context>
1168 <context>directory</context><context>.htaccess</context>
1169 </contextlist>
1170 <override>All</override>
1171
1172 <usage>
1173     <p>Die Direktive <directive type="section">FilesMatch</directive>
1174     begrenzt wie die Direktive <directive module="core"
1175     type="section">Files</directive> die enthaltenen Anweisungen auf
1176     Dateinamen. Sie akzeptiert jedoch regul&auml;re Ausdr&uuml;cke.
1177     Beispielsweise w&uuml;rde</p>
1178
1179     <example>
1180       &lt;FilesMatch "\.(gif|jpe?g|png)$"&gt;
1181     </example>
1182
1183     <p>auf die gebr&auml;uchlichsten Grafikformate im Internet passen.</p>
1184 </usage>
1185
1186 <seealso><a href="../sections.html">Wie die Abschnitte &lt;Directory&gt;,
1187     &lt;Location&gt; und &lt;Files&gt; arbeiten</a> f&uuml;r eine
1188     Erl&auml;uterung, wie diese verschiedenen Abschnitte miteinander
1189     kombiniert werden, wenn eine Anfrage empfangen wird</seealso>
1190 </directivesynopsis>
1191
1192 <directivesynopsis>
1193 <name>ForceType</name>
1194 <description>Erzwingt die Auslieferung aller passendenden Dateien mit dem
1195 angegebenen MIME-Content-Type</description>
1196 <syntax>ForceType <var>MIME-Type</var>|None</syntax>
1197 <contextlist><context>directory</context><context>.htaccess</context>
1198 </contextlist>
1199 <override>FileInfo</override>
1200 <compatibility>Wurde im Apache 2.0 in den Core verschoben</compatibility>
1201
1202 <usage>
1203     <p>Wenn sie innerhalb einer <code>.htaccess</code>-Datei, eines
1204     <directive type="section" module="core">Directory</directive>-,
1205     <directive type="section" module="core">Location</directive>-
1206     <directive type="section" module="core">Files</directive>-Containers
1207     angegeben wird, erzwingt die Direktive die Auslieferung aller
1208     entsprechenden Dateien mit dem Content-Type, der durch
1209     <var>MIME-Type</var> definiert wurde. Wenn Sie zum Beispiel ein
1210     Verzeichnis voller GIF-Dateien haben, die Sie nicht alle durch
1211     <code>.gif</code> kennzeichnen wollen, k&ouml;nnen Sie angeben:</p>
1212
1213     <example>
1214       ForceType image/gif
1215     </example>
1216
1217     <p>Beachten Sie bitte, dass die Direktive anders als <directive
1218     module="core">DefaultType</directive> alle MIME-Type-Zuordnungen
1219     &uuml;berschreibt, einschlie&szlig;lich Dateiendungen, die einen
1220     Medientyp bezeichnen k&ouml;nnten.</p>
1221
1222     <p>Sie k&ouml;nnen jede <directive>ForceType</directive>-Angabe
1223     durch die Verwendung des Wertes <code>None</code> &uuml;berschreiben:</p>
1224
1225     <example>
1226       # erzwinge image/gif f&uuml;r alle Dateien:<br />
1227       &lt;Location /images&gt;<br />
1228         <indent>
1229           ForceType image/gif<br />
1230         </indent>
1231       &lt;/Location&gt;<br />
1232       <br />
1233       # hier jedoch normale MIME-Type-Zuordnungen:<br />
1234       &lt;Location /images/mixed&gt;<br />
1235       <indent>
1236         ForceType None<br />
1237       </indent>
1238       &lt;/Location&gt;
1239     </example>
1240 </usage>
1241 </directivesynopsis>
1242
1243 <directivesynopsis>
1244 <name>HostnameLookups</name>
1245 <description>Aktiviert DNS-Lookups auf Client-IP-Adressen</description>
1246 <syntax>HostnameLookups On|Off|Double</syntax>
1247 <default>HostnameLookups Off</default>
1248 <contextlist><context>server config</context><context>virtual host</context>
1249 <context>directory</context></contextlist>
1250
1251 <usage>
1252     <p>Diese Direktive aktiviert die DNS-Abfrage <transnote>ein sogenannter
1253     DNS-Lookup</transnote>, so dass Hostnamen protokolliert (und in
1254     <code>REMOTE_HOST</code> an CGIs/SSIs &uuml;bergeben) werden k&ouml;nnnen.
1255     Der Wert <code>Double</code> bezieht sich auf ein
1256     Double-Reverse-DNS-Lookup. D.h. nachdem ein Reverse-Lookup
1257     durchgef&uuml;hrt wurde, wird dann auf dem Ergebnis ein
1258     Forward-Lookup ausgef&uuml;hrt. Wenigstens eine der IP-Adressen
1259     aus dem Forward-Lookup muss der Originaladresse entsprechen.
1260     (In der "tcpwrappers"-Terminologie wird dies <code>PARANOID</code>
1261     genannt.)</p>
1262
1263     <p>Unabh&auml;ngig von der Einstellung wird ein Double-Reverse-Lookup
1264     durchgef&uuml;hrt, wenn <module>mod_authz_host</module> zur
1265     Zugriffskontrolle per Hostnamen eingesetzt wird. Dies ist aus
1266     Sicherheitsgr&uuml;nden notwendig. Beachten Sie, dass das Ergebnis dieses
1267     Double-Reverse-Lookups nicht generell verf&uuml;gbar ist, solange Sie
1268     nicht <code>HostnameLookups Double</code> setzen. Wenn beispielsweise
1269     nur <code>HostnameLookups On</code> angegeben ist und eine Anfrage
1270     f&uuml;r ein Objekt erfolgt, welches durch Hostnamen-Beschr&auml;nkungen
1271     gesch&uuml;tzt ist, dann wird CGIs nur das Ergebnis des
1272     Singel-Reverse-Lookups in <code>REMOTE_HOST</code> &uuml;bergeben,
1273     egal ob das Doble-Reverse-Lookup fehlschlug oder nicht.</p>
1274
1275     <p>Die Voreinstellung ist <code>Off</code>, um Netzwerktraffic bei den
1276     Angeboten einzusparen, die nicht tats&auml;chlich Reverse-Lookups
1277     ben&ouml;tigen. Es ist auch f&uuml;r die Endanwender besser, da sie nicht
1278     die zus&auml;tzliche Wartezeit ertragen m&uuml;ssen, die ein Lookup mit
1279     sich bringt. Hoch frequentierte Angebote sollten diese Direktive auf
1280     <code>Off</code>lassen. Das Hilfsprogramm <a
1281     href="../programs/logresolve.html">logresolve</a>, das
1282     standardm&auml;&szlig;ig in das Unterverzeichnis <code>bin</code>
1283     Ihres Installationsverzeichnisses kompiliert wird, kann dazu verwendet
1284     werden, um offline Hostnamen zu protokollierten IP-Adressen
1285     nachzuschlagen.</p>
1286 </usage>
1287 </directivesynopsis>
1288
1289 <directivesynopsis type="section">
1290 <name>IfDefine</name>
1291 <description>Schlie&szlig;t Direktiven ein, die nur ausgef&uuml;hrt werden,
1292 wenn eine Testbedingung beim Start wahr ist</description>
1293 <syntax>&lt;IfDefine [!]<var>Parametername</var>&gt; ...
1294     &lt;/IfDefine&gt;</syntax>
1295 <contextlist><context>server config</context><context>virtual host</context>
1296 <context>directory</context><context>.htaccess</context>
1297 </contextlist>
1298 <override>All</override>
1299
1300 <usage>
1301     <p>Der Container <code>&lt;IfDefine <var>Test</var>&gt;...&lt;/IfDefine&gt;
1302     </code> wird dazu verwendet, Direktiven als bedingt zu kennzeichnen.
1303     Die Direktiven innerhalb eines <directive
1304     type="section">IfDefine</directive>-Abschnittes werden nur ausgef&uuml;hrt,
1305     wenn <var>Test</var> wahr ist. Ist <var>Test</var> falsch, wird alles
1306     zwischen der Start- und Endemarkierung ignoriert.</p>
1307
1308     <p>In der <directive type="section">IfDefine</directive>-Anweisung kann
1309     <var>Test</var> eine von zwei Formen annehmen:</p>
1310
1311     <ul>
1312       <li><var>Parametername</var></li>
1313
1314       <li><code>!</code><var>Parametername</var></li>
1315     </ul>
1316
1317     <p>Im ersten Fall werden die Direktiven zwischen der Start- und
1318     Endemarkierung nur ausgef&uuml;hrt, wenn der Parameter namens
1319     <var>Parametername</var> definiert ist. Die zweite Form kehrt den
1320     Test um und f&uuml;hrt die Direktiven nur dann aus, wenn
1321     <var>Parametername</var> <strong>nicht</strong> definiert ist.</p>
1322
1323     <p>Das Argument <var>Parametername</var> ist ein sogenanntes
1324     "Define", das beim beim Start des Servers in der
1325     <code>httpd</code>-Befehlszeile durch <code>-D<var>Parameter</var></code>
1326     angegeben wird.</p>
1327
1328     <p><directive type="section">IfDefine</directive>-Container k&ouml;nnen
1329     ineinander verschachtelt werden, um einfache Multi-Parameter-Tests
1330     zu implementieren. Beispiel:</p>
1331
1332     <example>
1333       httpd -DReverseProxy ...<br />
1334       <br />
1335       # httpd.conf<br />
1336       &lt;IfDefine ReverseProxy&gt;<br />
1337       <indent>
1338         LoadModule rewrite_module modules/mod_rewrite.so<br />
1339         LoadModule proxy_module   modules/libproxy.so<br />
1340       </indent>
1341       &lt;/IfDefine&gt;
1342     </example>
1343 </usage>
1344 </directivesynopsis>
1345
1346 <directivesynopsis type="section">
1347 <name>IfModule</name>
1348 <description>Schlie&szlig;t Direktiven ein, die abh&auml;ngig vom
1349 Vorhandensein oder Fehlen eines speziellen Moduls ausgef&uuml;hrt
1350 werden</description>
1351 <syntax>&lt;IfModule [!]<var>Modulname</var>&gt; ...
1352     &lt;/IfModule&gt;</syntax>
1353 <contextlist><context>server config</context><context>virtual host</context>
1354 <context>directory</context><context>.htaccess</context>
1355 </contextlist>
1356 <override>All</override>
1357
1358 <usage>
1359     <p>Der Container <code>&lt;IfModule
1360     <var>Test</var>&gt;...&lt;/IfModule&gt;</code> wird dazu verwendet,
1361     Direktiven als abh&auml;ngig von dem Vorhandensein eines speziellen
1362     Moduls zu kennzeichnen. Die Direktiven innerhalb eines <directive
1363     type="section">IfModule</directive>-Abschnitts werden nur
1364     ausgef&uuml;hrt, wenn <var>Test</var> wahr ist. Ist <var>Test</var>
1365     falsch, wird alles zwischen der Start- und Endemarkierung ignoriert.</p>
1366
1367     <p>In der <directive type="section">IfModule</directive>-Anweisung
1368     kann <var>Test</var> eine von zwei Formen annehmen:</p>
1369
1370     <ul>
1371       <li><var>Modulname</var></li>
1372
1373       <li><code>!</code><var>Modulname</var></li>
1374     </ul>
1375
1376     <p>Im ersten Fall werden die Direktiven zwischen der Start- und
1377     Endemarkierung nur ausgef&uuml;hrt, das Modul namens
1378     <var>Modulname</var> im Apache enthalten ist -- entweder einkompiliert
1379     oder mittels <directive module="mod_so">LoadModule</directive>
1380     dynamisch geladen. Die zweite Form dreht den Test um und f&uuml;hrt die
1381     Direktiven nur aus, wenn <var>Modulname</var> <strong>nicht</strong>
1382     enthalten ist.</p>
1383
1384     <p>Das Argument <var>Modulname</var> ist der Dateiname des Moduls zum
1385     Zeitpunkt seiner Kompilierung, z.B. <code>mod_rewrite.c</code>.
1386     Wenn ein Modul aus mehreren Quelltext-Dateien besteht, verwenden Sie den
1387     Namen der Datei, welche die Zeichenfolge
1388     <code>STANDARD20_MODULE_STUFF</code> enth&auml;lt.</p>
1389
1390     <p><directive type="section">IfModule</directive>-Container k&ouml;nnen
1391     inneinander verschachtelt werden, um einfache Multi-Modul-Tests
1392     durchzuf&uuml;hren.</p>
1393
1394     <p>Dieser Container sollte verwendet werden, wenn Sie eine
1395     Konfigurationsdatei ben&ouml;tigen, die unabh&auml;ngig davon funktioniert,
1396     ob ein bestimmtes Modul verf&uuml;gbar ist oder nicht. Normalerweise
1397     ist es nicht notwendig, Direktiven in <directive
1398     type="section">IfModule</directive>-Containern unterzubringen.</p>
1399 </usage>
1400 </directivesynopsis>
1401
1402 <directivesynopsis>
1403 <name>Include</name>
1404 <description>F&uuml;gt andere Konfigurationsdateien innerhalb der
1405 Server-Konfigurationsdatei ein</description>
1406 <syntax>Include <var>Dateiname</var>|<var>Verzeichnis</var></syntax>
1407 <contextlist><context>server config</context><context>virtual host</context>
1408 <context>directory</context>
1409 </contextlist>
1410 <compatibility>Die Platzhalter-Suche ist verf&uuml;gbar seit
1411 2.0.41</compatibility>
1412
1413 <usage>
1414     <p>Die Direktive erlaubt das Einf&uuml;gen anderer Konfigurationsdateien
1415     in die Konfigurationsdatei des Servers.</p>
1416
1417     <p>Shell-typische (<code>fnmatch()</code>) Platzhlaterzeichen k&ouml;nnen
1418     dazu verwendet werden, mehrere Dateien auf einmal in alphabetischer
1419     Reihenfolge einzuf&uuml;gen. Wenn <directive>Include</directive>
1420     dar&uuml;ber hinaus auf ein Verzeichnis anstatt auf eine Datei zeigt,
1421     liest der Apache alle Dateien in diesem Verzeichnis und allen
1422     Unterverzeichnissen ein. Das Einf&uuml;gen ganzer Verzeichnisse ist
1423     jedoch nicht empfehlenswert, da tempor&auml;re Dateien sehr leicht
1424     versehentlich in einem Verzeichnis zur&uuml;ckgelassen werden, was
1425     <code>httpd</code> scheitern lassen kann.</p>
1426
1427     <p>Der angegebene Dateiname kann ein absoluter Pfad sein oder relativ zum
1428     <directive module="core">ServerRoot</directive>-Verzeichnis angegeben
1429     werden.</p>
1430
1431     <p>Beispiele:</p>
1432
1433     <example>
1434       Include /usr/local/apache2/conf/ssl.conf<br />
1435       Include /usr/local/apache2/conf/vhosts/*.conf
1436     </example>
1437
1438     <p>Oder Sie geben Pfade relativ zu Ihrem <directive
1439     module="core">ServerRoot</directive>-Verzeichnis an:</p>
1440
1441     <example>
1442       Include conf/ssl.conf<br />
1443       Include conf/vhosts/*.conf
1444     </example>
1445
1446     <p>Der Aufruf von <code>apachectl configtest</code> liefert eine Liste
1447     der Dateien, die w&auml;hrend des Konfigurations-Tests verarbeitet
1448     werden:</p>
1449
1450     <example>
1451       root@host# apachectl configtest<br />
1452       Processing config file: /usr/local/apache2/conf/ssl.conf<br />
1453       Processing config file: /usr/local/apache2/conf/vhosts/vhost1.conf<br />
1454       Processing config file: /usr/local/apache2/conf/vhosts/vhost2.conf<br />
1455       Syntax OK
1456     </example>
1457 </usage>
1458
1459 <seealso><a href="../programs/apachectl.html">apachectl</a></seealso>
1460 </directivesynopsis>
1461
1462 <directivesynopsis>
1463 <name>KeepAlive</name>
1464 <description>Aktiviert persistente HTTP-Verbindungen</description>
1465 <syntax>KeepAlive On|Off</syntax>
1466 <default>KeepAlive On</default>
1467 <contextlist><context>server config</context><context>virtual host</context>
1468 </contextlist>
1469
1470 <usage>
1471     <p>Die Keep-Alive-Erweiterung von HTTP/1.0 und die
1472     HTTP/1.1-Funktionalit&auml;t persistenter Verbindungen unterst&uuml;tzt
1473     langlebige HTTP-Sitzungen, die es erlauben, mehrere Anfragen &uuml;ber
1474     die gleich TCP-Verbindung zu senden. In einigen F&auml;llen wurde eine
1475     Beschleunigung der Wartezeiten von beinahe 50% f&uuml;r HTML-Dokumente
1476     mit vielen Bildern festgestellt. Um Keep-Alive-Verbindungen zu aktivieren,
1477     setzen Sie <code>KeepAlive On</code>.</p>
1478
1479     <p>Bei HTTP/1.0-Clients werden Keep-Alive-Verbindungen nur dann verwendet,
1480     wenn sie vom Client eigens angefordert werden. Desweiteren k&ouml;nnen
1481     Keep-Alive-Verbindungen bei einem HTTP/1.0-Client nur dann verwendet
1482     werden, wenn die L&auml;nge des Inhalts im Voraus bekannt ist. Dies
1483     impliziert, dass dynamische Inhalte wie CGI-Ausgaben, SSI-Seiten und
1484     servergenerierte Verzeichnisauflistungen im Allgemeinen keine
1485     Keep-Alive-Verbindungen mit HTTP/1.0-Clients verwenden. Bei
1486     HTTP/1.1-Clients sind Keep-Alive-Verbindungen Voreinstellung, solange
1487     nichts anderes angegeben ist. Wenn der Client es anfordert, wird
1488     Chunked-Encoding verwendet, um Inhalte mit unbekannter L&auml;nge
1489     &uuml;ber persistente Verbindungen zu senden.</p>
1490 </usage>
1491
1492 <seealso><directive module="core">MaxKeepAliveRequests</directive></seealso>
1493 </directivesynopsis>
1494
1495 <directivesynopsis>
1496 <name>KeepAliveTimeout</name>
1497 <description>Zeitspanne, die der Server w&auml;hrend persistenter Verbindungen
1498 auf nachfolgende Anfragen wartet</description>
1499 <syntax>KeepAliveTimeout <var>Sekunden</var></syntax>
1500 <default>KeepAliveTimeout 15</default>
1501 <contextlist><context>server config</context><context>virtual host</context>
1502 </contextlist>
1503
1504 <usage>
1505     <p>Dies legt die Anzahl der Sekunden fest, die der Apache auf weitere
1506     Anfragen wartet, bevor er die Verbindung schlie&szlig;t. Nachdem einmal
1507     eine Anfrage entgegen genommen wurde, wird die durch die Direktive
1508     <directive module="core">Timeout</directive> festgelegte Auszeit
1509     angewendet.</p>
1510
1511     <p>Auf stark belasteten Servern kann ein hoher
1512     <directive>KeepAliveTimeout</directive>-Wert zu Durchsatzminderungen
1513     f&uuml;hren. Je h&ouml;her die Auszeit angegeben ist, desto l&auml;nger
1514     ist der Apache damit besch&auml;ftigt, auf unt&auml;tige Clients zu
1515     warten.</p>
1516 </usage>
1517 </directivesynopsis>
1518
1519 <directivesynopsis type="section">
1520 <name>Limit</name>
1521 <description>Beschr&auml;nkt die eingeschlossenen Zugriffskontrollen auf
1522 bestimmte HTTP-Methoden</description>
1523 <syntax>&lt;Limit <var>Methode</var> [<var>Methode</var>] ... &gt; ...
1524     &lt;/Limit&gt;</syntax>
1525 <contextlist><context>server config</context><context>virtual host</context>
1526 <context>directory</context><context>.htaccess</context>
1527 </contextlist>
1528 <override>All</override>
1529
1530 <usage>
1531     <p>Zugriffskontrollen gelten normalerweise f&uuml;r <strong>alle</strong>
1532     Zugriffsmethoden, was normalerweise auch das gew&uuml;nschte Verhalten ist.
1533     <strong>Im Allgemeinen sollten Zugriffskontrollen nicht in einen
1534     <directive type="section">Limit</directive>-Container gepackt
1535     werden.</strong></p>
1536
1537     <p>Der Sinn der Direktive <directive type="section">Limit</directive>
1538     ist es, den Effekt der Zugriffskontrollen auf die angegebenen
1539     HTTP-Methoden zu beschr&auml;nken. Bei allen anderen Methoden haben
1540     die in der <directive type="section">Limit</directive>-Gruppe
1541     enthaltenen Zugriffsbeschr&auml;nkungen <strong>keine Wirkung</strong>.
1542     Im folgenden Beispiel gilt die Zugriffskontrolle nur f&uuml;r die
1543     Methoden <code>POST</code>, <code>PUT</code> und <code>DELETE</code>.
1544     Alle anderen Methoden bleiben ungesch&uuml;tzt:</p>
1545
1546     <example>
1547       &lt;Limit POST PUT DELETE&gt;<br />
1548       <indent>
1549         Require valid-user<br />
1550       </indent>
1551       &lt;/Limit&gt;
1552     </example>
1553
1554     <p>Sie k&ouml;nnen eine oder mehrere der folgenden Methoden angeben:
1555     <code>GET</code>, <code>POST</code>, <code>PUT</code>, <code>DELETE</code>,
1556     <code>CONNECT</code>, <code>OPTIONS</code>,
1557     <code>PATCH</code>, <code>PROPFIND</code>, <code>PROPPATCH</code>,
1558     <code>MKCOL</code>, <code>COPY</code>, <code>MOVE</code>,
1559     <code>LOCK</code> und <code>UNLOCK</code>. <strong>Die Methodennamen
1560     unterscheiden zwischen Gro&szlig;- und Kleinschreibung.</strong> Wenn
1561     <code>GET</code> verwendet wird, sind <code>HEAD</code>-Anfragen
1562     ebenfalls eingeschr&auml;nkt. Die <code>TRACE</code>-Methode kann nicht
1563     limitiert werden.</p>
1564
1565     <note type="warning">
1566       Wenn es um Zugriffsbeschr&auml;nkungen geht, sollte
1567       ein <directive module="core" type="section"
1568       >LimitExcept</directive>-Container sollte immmer einem <directive
1569       module="core" type="section">Limit</directive>-Container vorgezogen
1570       werden, da <directive module="core" type="section">LimitExcept</directive>
1571       einen Schutz gegen beliebige Methoden bietet.
1572     </note>
1573 </usage>
1574 </directivesynopsis>
1575
1576 <directivesynopsis type="section">
1577 <name>LimitExcept</name>
1578 <description>Beschr&auml;nkt Zugriffskontrollen auf alle HTTP-Methoden
1579 au&szlig;er den genannten</description>
1580 <syntax>&lt;LimitExcept <var>Methode</var> [<var>Methode</var>] ... &gt; ...
1581     &lt;/LimitExcept&gt;</syntax>
1582 <contextlist><context>server config</context><context>virtual host</context>
1583 <context>directory</context><context>.htaccess</context>
1584 </contextlist>
1585 <override>All</override>
1586
1587 <usage>
1588     <p><directive type="section">LimitExcept</directive> und
1589     <code>&lt;/LimitExcept&gt;</code> werden dazu verwendet, eine Gruppe
1590     von Anweisungen zur Zugriffskontrolle zusammenzufassen, die dann auf
1591     jede HTTP-Methode angewendet werden, die <strong>nicht</strong>
1592     als Argument angegeben ist. D.h. dies ist das Gegenteil des
1593     <directive type="section" module="core">Limit</directive>-Containers
1594     und kann zur Steuerung von Standard- und nicht-Standard-/unbekannten
1595     Methoden verwendet werden. F&uuml;r weitere Einzelheiten lesen Sie bitte
1596     die Beschreibung zu <directive module="core"
1597     type="section">Limit</directive>.</p>
1598
1599     <p>Beispiel:</p>
1600
1601     <example>
1602       &lt;LimitExcept POST GET&gt;<br />
1603       <indent>
1604         Require valid-user<br />
1605       </indent>
1606       &lt;/LimitExcept&gt;
1607     </example>
1608
1609 </usage>
1610 </directivesynopsis>
1611
1612 <directivesynopsis>
1613 <name>LimitInternalRecursion</name>
1614 <description>Bestimmt die maximale Anzahl interner Umleitungen und 
1615   verschachtelter Unteranfragen</description>
1616 <syntax>LimitInternalRecursion <var>Zahl</var> [<var>Zahl</var>]</syntax>
1617 <default>LimitInternalRecursion 10</default>
1618 <contextlist><context>server config</context><context>virtual host</context>
1619 </contextlist>
1620 <compatibility>Verf&uuml;gbar ab Apache 2.0.47</compatibility>
1621
1622 <usage>
1623     <p>Eine interne Umleitung erfolgt beispielsweise, wenn die Direktive
1624     <directive module="mod_actions">Action</directive> verwendet wird, welche
1625     die Originalanfrage intern zu einem CGI-Skript weiterleitet. Eine
1626     Unteranfrage <transnote>engl. Subrequest</transnote> ist ein Mechanismus des
1627     Apache, um herauszufinden, was bei einer URI geschehen w&uuml;rde, w&auml;re
1628     sie angefordert worden. <module>mod_dir</module> z.B. verwendet
1629     Unteranfragen, um nach den Dateien zu suchen, die in der <directive
1630     module="mod_dir">DirectoryIndex</directive>-Anweisung aufgef&uuml;hrt
1631     sind.</p>
1632     
1633     <p><directive>LimitInternalRecursion</directive> bewahrt den Server vor
1634       einem Absturz, wenn er in eine Endlosschleife aus internen Umleitungen
1635       oder Unteranfragen hineinl&auml;uft. Derartige Schleifen werden
1636       gew&ouml;hnlich durch Fehlkonfiguration verursacht.</p>
1637
1638     <p>Die Direktive setzt zwei verschiedene Begrenzungen, welche je Anfrage
1639       ausgewertet werden. Die erste <var>Zahl</var> bestimmt die maximale
1640       Anzahl der Umleitungen, die aufeinander folgen d&uuml;rfen. Die zweite
1641       <var>Zahl</var> legt fest, wie tief Unteranfragen ineinander
1642       verschachtelt werden d&uuml;rfen. Wenn Sie lediglich eine <var>Zahl</var>
1643       angeben, wird sie beiden Begrenzungen zugewiesen.</p>
1644
1645     <example><title>Beispiel</title>
1646       LimitInternalRecursion 5
1647     </example>
1648 </usage>
1649 </directivesynopsis>
1650
1651 <directivesynopsis>
1652 <name>LimitRequestBody</name>
1653 <description>Begrenzt die Gesamtgr&ouml;&szlig;e des vom Client gesendeten
1654 HTTP-Request-Body</description>
1655 <syntax>LimitRequestBody <var>Bytes</var></syntax>
1656 <default>LimitRequestBody 0</default>
1657 <contextlist><context>server config</context><context>virtual host</context>
1658 <context>directory</context><context>.htaccess</context>
1659 </contextlist>
1660 <override>All</override>
1661
1662 <usage>
1663     <p>Die Direktive gibt die Anzahl der <var>Bytes</var> zwischen 0
1664     (unbegrenzt) und 2147483647 (2GB) an, die im Request-Body (Datenteil der
1665     Anfrage) erlaubt sind.</p>
1666
1667     <p>Die Direktive <directive>LimitRequestBody</directive> erlaubt es dem
1668     Benutzer, die Gr&ouml;&szlig;e des HTTP-Request-Bodys in dem Kontext zu
1669     begrenzen, in dem die Anweisung angegeben ist (Server, pro Verzeichnis,
1670     pro Datei oder pro Adresse). Wenn die Anfrage des Clients dieses Limit
1671     &uuml;berschreitet, gibt der Server einen Fehler zur&uuml;ck anstatt die
1672     Anfrage zu bearbeiten. Die Gr&ouml;&szlig;e des Datenteils einer Anfrage
1673     kann sehr stark variieren, abh&auml;ngig von der Art der Ressource und
1674     den f&uuml;r diese Ressource erlaubten Methoden. CGI-Skripte verwenden
1675     den Datenteil &uuml;blicherweise zum Empfang von Formulardaten. Wird
1676     die <code>PUT</code>-Methode angewendet, dann muss der Wert mindestens
1677     so gro&szlig; sein wie irgendeine Darstellungsform, die der Server
1678     f&uuml;r diese Ressource akzeptieren soll.</p>
1679
1680     <p>Die Direktive gibt dem Serveradministrator eine gr&ouml;&szlig;ere
1681     Kontrolle gegen&uuml;ber abnormalem Verhalten von Clients, was bei der
1682     Vermeidung einiger Formen von Denial-of-Service-Attacken hilfreich
1683     sein kann.</p>
1684
1685     <p>Wenn Sie beispielsweise das Hochladen von Dateien zu einer bestimmten
1686     Adresse erlauben, aber die Gr&ouml;&szlig;e der hochgeladenen Dateien
1687     auf 100K beschr&auml;nken wollen, k&ouml;nnen Sie die folgende Anweisung
1688     verwenden:</p>
1689
1690     <example>
1691       LimitRequestBody 102400
1692     </example>
1693
1694 </usage>
1695 </directivesynopsis>
1696
1697 <directivesynopsis>
1698 <name>LimitRequestFields</name>
1699 <description>Begrenzt die Anzahl der HTTP-Request-Header, die vom Client
1700 entgegengenommen werden</description>
1701 <syntax>LimitRequestFields <var>Anzahl</var></syntax>
1702 <default>LimitRequestFields 100</default>
1703 <contextlist><context>server config</context></contextlist>
1704
1705 <usage>
1706     <p><var>Anzahl</var> ist ein Integer-Wert (eine positive Ganzzahl)
1707     zwischen 0 (unbegrenzt) und 32767. Die Voreinstellung wird durch die
1708     Konstante <code>DEFAULT_LIMIT_REQUEST_FIELDS</code> (<code>100</code>
1709     bei der Auslieferung) zur Kompilierungszeit gesetzt.</p>
1710
1711     <p>Die Direktive <directive>LimitRequestFields</directive> erlaubt es
1712     dem Serveradministrator, die maximale Anzahl der in einem HTTP-Request
1713     erlaubten HTTP-Request-Header zu ver&auml;ndern. F&uuml;r den Server
1714     muss dieser Wert gr&ouml;&szlig;er sein als die Anzahl der Headerzeilen,
1715     die ein normaler Client senden k&ouml;nnte. Die Anzahl der Request-Header,
1716     die ein gew&ouml;hnlicher Client verwendet, &uuml;berschreitet selten 20
1717     Zeilen. Allerdings kann dies zwischen den verschiedenen
1718     Client-Ausf&uuml;hrungen variieren, oft abh&auml;ngig vom Ausma&szlig;,
1719     mit dem der Anwender die genaue Content-Negotiation-Unterst&uuml;tzung
1720     seines Browsers konfiguriert hat. Optionale HTTP-Erweiterungen
1721     &auml;u&szlig;ern sich oft in Form von HTTP-Headern.</p>
1722
1723     <p>Die Direktive gibt dem Serveradministrator eine gr&ouml;&szlig;ere
1724     Kontrolle gegen&uuml;ber abnormalem Verhalten von Clients, was bei der
1725     Vermeidung einiger Formen von Denial-of-Service-Attacken hilfreich
1726     sein kann. Der Wert sollte erh&ouml;ht werden, wenn normale Clients
1727     eine Fehlermeldung vom Server erhalten, die besagt, dass mit der Anfrage
1728     zu viele Headerzeilen gesendet wurden.</p>
1729
1730     <p>Beispiel:</p>
1731
1732     <example>
1733       LimitRequestFields 50
1734     </example>
1735
1736 </usage>
1737 </directivesynopsis>
1738
1739 <directivesynopsis>
1740 <name>LimitRequestFieldSize</name>
1741 <description>Begrenzt die L&auml;nge des vom Client gesendeten
1742 HTTP-Request-Headers</description>
1743 <syntax>LimitRequestFieldsize <var>Bytes</var></syntax>
1744 <default>LimitRequestFieldsize 8190</default>
1745 <contextlist><context>server config</context></contextlist>
1746
1747 <usage>
1748     <p>Die Direktive gibt die Anzahl der <var>Bytes</var> zwischen 0
1749     und dem Wert der zur Kompilierungszeit definierten Konstante
1750     <code>DEFAULT_LIMIT_REQUEST_FIELDSIZE</code> (<code>8190</code> bei
1751     der Auslieferung) an, die in einem HTTP-Header erlaubt sind.</p>
1752
1753     <p>Die Direktive <directive>LimitRequestFieldsize</directive> erlaubt es
1754     dem Serveradministrator, die maximale Gr&ouml;&szlig;e eines
1755     HTTP-Request-Headers auf einen Wert unterhalb der normalen, im Server
1756     einkompilierten Gr&ouml;&szlig;e des Eingabepuffers zu verringern.
1757     F&uuml;r den Server muss der Wert gro&szlig; genug sein, um eine beliebige
1758     Headerzeile einer normalen Client-Anfrage vorzuhalten. Die
1759     Gr&ouml;&szlig;e variiert stark zwischen den verschiedenen
1760     Client-Ausf&uuml;hrungen, oft abh&auml;ngig vom Ausma&szlig;, mit dem
1761     der Anwender die genaue Content-Negotiation-Unterst&uuml;tzung seines
1762     Browsers konfiguriert hat.</p>
1763
1764     <p>Die Direktive gibt dem Serveradministrator eine gr&ouml;&szlig;ere
1765     Kontrolle gegen&uuml;ber abnormalem Verhalten von Clients, was bei der
1766     Vermeidung einiger Formen von Denial-of-Service-Attacken hilfreich
1767     sein kann.</p>
1768
1769     <p>Beispiel:</p>
1770
1771     <example>
1772       LimitRequestFieldSize 4094
1773     </example>
1774
1775     <note>Unter normalen Umst&auml;nden sollte die Voreinstellung nicht
1776     ver&auml;ndert werden.</note>
1777 </usage>
1778 </directivesynopsis>
1779
1780 <directivesynopsis>
1781 <name>LimitRequestLine</name>
1782 <description>Begrenzt die L&auml;nge der vom Client entgegengenommenen
1783 HTTP-Anfragezeile</description>
1784 <syntax>LimitRequestLine <var>Bytes</var></syntax>
1785 <default>LimitRequestLine 8190</default>
1786 <contextlist><context>server config</context></contextlist>
1787
1788 <usage>
1789     <p>Die Direktive legt die Anzahl der <var>Bytes</var> zwischen 0 und
1790     dem  Wert der zur Kompilierungszeit definierten Konstante
1791     <code>DEFAULT_LIMIT_REQUEST_LINE</code> (<code>8190</code> bei der
1792     Auslieferung) fest, die in der HTTP-Anfragezeile erlaubt sind.</p>
1793
1794     <p>Die Direktive <directive>LimitRequestLine</directive> erlaubt es dem
1795     Serveradministrator, die maximale Gr&ouml;&szlig;e der
1796     HTTP-Anfragezeile auf einen Wert unterhalb der normalen, im Server
1797     einkompilierten Gr&ouml;&szlig;e des Eingabepuffers zu verringern. Da
1798     die Anfragezeile aus der HTTP-Methode, der URI und der Protokollversion
1799     besteht, bedeutet die <directive>LimitRequestLine</directive>-Direktive
1800     eine Beschr&auml;nkung der L&auml;nge der f&uuml;r eine Anfrage an den
1801     Server erlaubten Anfrage-URI. F&uuml;r den Server muss der Wert gro&szlig;
1802     genug sein, um jeden seiner Ressourcennamen vorzuhalten,
1803     einschlie&szlig;lich aller Informationen, die im Query-String einer
1804     <code>GET</code>-Anfrage &uuml;bergeben werden k&ouml;nnen.</p>
1805
1806     <p>Die Direktive gibt dem Serveradministrator eine gr&ouml;&szlig;ere
1807     Kontrolle gegen&uuml;ber abnormalem Verhalten von Clients, was bei der
1808     Vermeidung einiger Formen von Denial-of-Service-Attacken hilfreich
1809     sein kann.</p>
1810
1811     <p>Beispiel:</p>
1812
1813     <example>
1814       LimitRequestLine 4094
1815     </example>
1816
1817     <note>Unter normalen Umst&auml;nden sollte die Voreinstellung nicht
1818     ver&auml;ndert werden.</note>
1819 </usage>
1820 </directivesynopsis>
1821
1822 <directivesynopsis>
1823 <name>LimitXMLRequestBody</name>
1824 <description>Begrenzt die Gr&ouml;&szlig;e eines XML-basierten
1825 Request-Bodys</description>
1826 <syntax>LimitXMLRequestBody <var>Bytes</var></syntax>
1827 <default>LimitXMLRequestBody 1000000</default>
1828 <contextlist><context>server config</context><context>virtual host</context>
1829 <context>directory</context><context>.htaccess</context></contextlist>
1830 <override>All</override>
1831
1832 <usage>
1833     <p>Dies gibt die Grenze f&uuml;r die maximale Gr&ouml;&szlig;e (in Bytes)
1834     des XML-basierten Request-Bodys an. Der Wert <code>0</code> deaktiviert
1835     diese Pr&uuml;fung.</p>
1836
1837     <p>Beispiel:</p>
1838
1839     <example>
1840       LimitXMLRequestBody 0
1841     </example>
1842
1843 </usage>
1844 </directivesynopsis>
1845
1846 <directivesynopsis type="section">
1847 <name>Location</name>
1848 <description>Wendet die enthaltenen Direktiven nur auf die entsprechenden
1849 URLs an</description>
1850 <syntax>&lt;Location
1851     <var>URL-Pfad</var>|<var>URL</var>&gt; ... &lt;/Location&gt;</syntax>
1852 <contextlist><context>server config</context><context>virtual host</context>
1853 </contextlist>
1854
1855 <usage>
1856     <p>Die Direktive <directive type="section">Location</directive>
1857     begrenzt die Reichweite der enthaltenen Anweisungen auf URLs.
1858     Sie ist der Direktive <directive type="section"
1859     module="core">Directory</directive> &auml;hnlich und startet einen
1860     Abschnitt, der mit der Anweisung <code>&lt;/Location&gt;</code>
1861     abgeschlossen wird. <directive
1862     type="section">Location</directive>-Container werden, nachdem die
1863     <directive type="section" module="core">Directory</directive>-Container
1864     und <code>.htaccess</code>-Dateien gelesen wurden, und nach den
1865     <directive type="section" module="core">Files</directive>-Containern, in
1866     der Reihenfolge ausgef&uuml;hrt, in der sie in der Konfigurationsdatei
1867     erscheinen.</p>
1868
1869     <p><directive type="section">Location</directive>-Abschnitte operieren
1870       vollst&auml;ndig au&szlig;erhalb des Dateisystems. Dies hat mehrere
1871       Konsequenzen. An Wichtigsten, <directive
1872       type="section">Location</directive>-Anweisungen sollten nicht daf&uuml;r
1873       verwendet werden, den Zugriff zu Teilen des Dateisystems zu steuern. Da
1874       mehrere unterschiedliche URLs auf die gleiche Stelle des Dateisystems
1875       zeigen k&ouml;nnen, k&ouml;nnte eine solche Zugriffskontrolle u.U.
1876       umgangen werden.</p>
1877       
1878     <note><title>Wann sollte<directive
1879       type="section">Location</directive> verwendet werden</title>
1880
1881       <p>Verwenden Sie <directive type="section">Location</directive>, um
1882         Anweisungen auf Inhalte anzuwenden, die au&szlig;erhalb des Dateisystems
1883         abgelegt sind. Benutzen Sie <directive
1884         type="section" module="core">Directory</directive> und <directive
1885         type="section" module="core">Files</directive> f&uuml;r Inhalte, die
1886         innerhalb des Dateisystems abgelegt sind. Eine Ausnahme bildet 
1887         <code>&lt;Location /&gt;</code>, welches ein einfacher Weg ist, um eine 
1888         Konfiguration auf den gesamten Server anzuwenden.</p>
1889     </note>
1890  
1891     <p>F&uuml;r alle nicht-Proxy-Anfragen ist die entsprechende URL
1892     ein URL-Pfad in der Form <code>/path/</code>. Es d&uuml;rfen weder ein
1893     Schema, noch ein Hostname, noch ein Port, noch ein Query-String einbezogen
1894     werden. F&uuml;r Proxy-Anfragen hat die Vergleichs-URL die Form
1895     <code>schema://servername/path</code>. Das Pr&auml;fix muss angegeben
1896     werden.</p>
1897
1898     <p>Die URL kann Platzhalter verwenden. In einer Zeichenfolge mit
1899     Platzhaltern entspricht <code>?</code> einem einzelnen Zeichen und
1900     <code>*</code>einer beliebigen Zeichenfolge.</p>
1901
1902     <p>Erweiterte regul&auml;re Ausdr&uuml;cke k&ouml;nnen ebenfalls
1903     verwendet werden, indem das Zeichen <code>~</code> hinzugef&uuml;gt
1904     wird. Beispielsweise w&uuml;rde</p>
1905
1906     <example>
1907       &lt;Location ~ "/(extra|special)/data"&gt;
1908     </example>
1909
1910     <p>auf URLs passen, welche die Zeichenfolge <code>/extra/data</code>
1911     oder <code>/special/data</code> enthalten. Die Direktive <directive
1912     type="section" module="core">LocationMatch</directive> verh&auml;lt sich
1913     genauso wie <directive type="section">Location</directive> mit
1914     regul&auml;ren Ausdr&uuml;cken.</p>
1915
1916     <p>Die Funktionalit&auml;t von <directive
1917     type="section">Location</directive> ist insbesondere dann n&uuml;tzlich,
1918     wenn sie mit der <directive module="core">SetHandler</directive>-Direktive
1919     kombiniert wird. Um zum Beispiel Statusabfragen zu aktivieren, sie aber
1920     nur von Browsern aus <code>foo.com</code> zuzulassen, k&ouml;nnten Sie
1921     schreiben:</p>
1922
1923     <example>
1924       &lt;Location /status&gt;<br />
1925       <indent>
1926         SetHandler server-status<br />
1927         Order Deny,Allow<br />
1928         Deny from all<br />
1929         Allow from .foo.com<br />
1930       </indent>
1931       &lt;/Location&gt;
1932     </example>
1933
1934     <note><title>Anmerkung zu / (Schr&auml;gstrich, Slash)</title>
1935       <p>Das Slash-Zeichen hat eine besondere Bedeutung, je nachdem, wo es
1936       in der URL erscheint. Manche werden sein Verhalten vom Dateisystem
1937       gewohnt sein, wo mehrere aufeinanderfolgende Schr&auml;gstriche
1938       h&auml;ufig zu einem Schr&auml;gstrich zusammengefa&szlig;t werden
1939       (<em>d.h.</em> <code>/home///foo</code> ist das gleiche wie
1940       <code>/home/foo</code>). Im URL-Raum ist dies nicht notwendigerweise
1941       genauso. Bei der Direktive  <directive type="section"
1942       module="core">LocationMatch</directive> und der <directive type="section"
1943       >Location</directive>-Version mit regul&auml;ren Ausdr&uuml;cken
1944       m&uuml;ssen Sie explizit mehrere Schr&auml;gstriche angeben, wenn Sie
1945       genau dies beabsichtigen.</p>
1946
1947       <p>Beispielsweise w&uuml;rde <code>&lt;LocationMatch ^/abc&gt;</code>
1948       auf die angeforderte URL <code>/abc</code> passen, nicht aber auf
1949       <code>//abc</code>. Die Direktive <directive type="section"
1950       >Location</directive> (ohne regul&auml;re Ausdr&uuml;cke) verh&auml;lt
1951       sich &auml;hnlich, wenn sie f&uuml;r Proxy-Anfragen verwendet wird.
1952       Wenn <directive type="section">Location</directive> (ohne
1953       regul&auml;re Ausdr&uuml;cke) jedoch f&uuml;r nicht-Proxy-Anfragen
1954       verwendet wird, werden stillscheigend mehrere Schr&auml;chstriche mit
1955       mit einem einzigen Schr&auml;gstrich gleichgesetzt. Geben Sie
1956       beispielsweise <code>&lt;Location /abc/def&gt;</code> an und die
1957       Anfrage lautet auf <code>/abc//def</code>, dann greift die Anweisung.</p>
1958     </note>
1959 </usage>
1960 <seealso><a href="../sections.html">Wie die Abschnitte &lt;Directory&gt;,
1961     &lt;Location&gt; und &lt;Files&gt; arbeiten</a> f&uuml;r eine
1962     Erl&auml;uterung, wie diese verschiedenen Abschnitte miteinander
1963     kombiniert werden, wenn eine Anfrage empfangen wird</seealso>
1964 </directivesynopsis>
1965
1966 <directivesynopsis type="section">
1967 <name>LocationMatch</name>
1968 <description>Wendet die enthaltenen Direktiven nur auf URLs an, die auf
1969 regul&auml;re Ausdr&uuml;cke passen</description>
1970 <syntax>&lt;LocationMatch
1971     <var>regex</var>&gt; ... &lt;/LocationMatch&gt;</syntax>
1972 <contextlist><context>server config</context><context>virtual host</context>
1973 </contextlist>
1974
1975 <usage>
1976     <p>Die Direktive <directive type="section">LocationMatch</directive>
1977     begrenzt die Reichweite der enthaltenen Anweisungen in der gleichen Weise
1978     wie <directive module="core" type="section">Location</directive> auf URLs.
1979     Sie verwendet jedoch regul&auml;re Ausdr&uuml;cke als Argument anstelle
1980     einer einfachen Zeichenkette. Beispielsweise w&uuml;rde</p>
1981
1982     <example>
1983       &lt;LocationMatch "/(extra|special)/data"&gt;
1984     </example>
1985
1986     <p>auf URLs passen, welche die Zeichenfolge <code>/extra/data</code>
1987     oder <code>/special/data</code> enthalten.</p>
1988 </usage>
1989
1990 <seealso><a href="../sections.html">Wie die Abschnitte &lt;Directory&gt;,
1991     &lt;Location&gt; und &lt;Files&gt; arbeiten</a> f&uuml;r eine
1992     Erl&auml;uterung, wie diese verschiedenen Abschnitte miteinander
1993     kombiniert werden, wenn eine Anfrage empfangen wird</seealso>
1994 </directivesynopsis>
1995
1996 <directivesynopsis>
1997 <name>LogLevel</name>
1998 <description>Steuert die Ausf&uuml;hrlichkeit des Fehlerprotokolls</description>
1999 <syntax>LogLevel <var>Level</var></syntax>
2000 <default>LogLevel warn</default>
2001 <contextlist><context>server config</context><context>virtual host</context>
2002 </contextlist>
2003
2004 <usage>
2005     <p><directive>LogLevel</directive> stellt die Ausf&uuml;hrlichkeit
2006     der Nachrichten ein, die im Fehlerprotokoll aufgezeichnet werden (siehe
2007     Direktive <directive module="core">ErrorLog</directive>). Die folgenden,
2008     nach absteigender Aussagekraft sortierten <var>Level</var> sind
2009     verf&uuml;gbar:</p>
2010
2011     <table border="1">
2012       <tr>
2013         <th><strong>Level</strong> </th>
2014
2015         <th><strong>Beschreibung</strong> </th>
2016
2017         <th><strong>Beispiel</strong> </th>
2018       </tr>
2019
2020       <tr>
2021         <td><code>emerg</code> </td>
2022
2023         <td>Notfall - das System ist unbenutzbar.</td>
2024
2025         <td>"Child cannot open lock file. Exiting"
2026         <transnote>"Kindprozess kann die Lock-Datei nicht &ouml;ffnen.
2027         Beende Programm"</transnote></td>
2028       </tr>
2029
2030       <tr>
2031         <td><code>alert</code> </td>
2032
2033         <td>Ma&szlig;nahmen m&uuml;ssen unverz&uuml;glich ergriffen
2034         werden.</td>
2035
2036         <td>"getpwuid: couldn't determine user name from uid"
2037         <transnote>"getpwuid: kann keinen Benutzernamen aus der UID
2038         ermitteln"</transnote></td>
2039       </tr>
2040
2041       <tr>
2042         <td><code>crit</code> </td>
2043
2044         <td>Kritischer Zustand.</td>
2045
2046         <td>"socket: Failed to get a socket, exiting child"
2047         <transnote>"socket: Socket-Zuweisung fehlgeschlagen, beende
2048         Kindprozess"</transnote></td>
2049       </tr>
2050
2051       <tr>
2052         <td><code>error</code> </td>
2053
2054         <td>Fehlerbedingung.</td>
2055
2056         <td>"Premature end of script headers"
2057         <transnote>"Vorzeitiges Ende der Skript-Header"</transnote></td>
2058       </tr>
2059
2060       <tr>
2061         <td><code>warn</code> </td>
2062
2063         <td>Warnung.</td>
2064
2065         <td>"child process 1234 did not exit, sending another SIGHUP"
2066         <transnote>"Kindprozess 1234 nicht beendet, sende ein weiteres
2067         SIGHUP"</transnote></td>
2068       </tr>
2069
2070       <tr>
2071         <td><code>notice</code> </td>
2072
2073         <td>Normaler, aber signifikanter Zustand.</td>
2074
2075         <td>"httpd: caught SIGBUS, attempting to dump core in ..."
2076         <transnote>"httpd: SIGBUS empfangen, versuche Speicherabbild nach ...
2077         zu schreiben"</transnote></td>
2078       </tr>
2079
2080       <tr>
2081         <td><code>info</code> </td>
2082
2083         <td>Information.</td>
2084
2085         <td>"Server seems busy, (you may need to increase
2086         StartServers, or Min/MaxSpareServers)..."
2087         <transnote>"Server scheint besch&auml;ftigt zu sein,
2088         (m&ouml;glicherweise m&uuml;ssen Sie StartServers oder
2089         Min/MaxSpareServers erh&ouml;hen)"</transnote></td>
2090       </tr>
2091
2092       <tr>
2093         <td><code>debug</code> </td>
2094
2095         <td>Debug-Level-Nachrichten</td>
2096
2097         <td>"Opening config file ..."
2098         <transnote>"&Ouml;ffne Konfigurationsdatei ..."</transnote></td>
2099       </tr>
2100     </table>
2101
2102     <p>Geben Sie einen bestimmten Level an, denn werden Nachrichten von
2103     allen h&ouml;heren Leveln ebenso angezeigt. <em>Z.B.:</em> Wenn
2104     <code>LogLevel info</code> eingestellt ist, dann werden Nachrichten der
2105     Log-Level <code>notice</code> und <code>warn</code> ebenso eingetragen.</p>
2106
2107     <p>Es wird empfohlen, mindestens den Level <code>crit</code> zu
2108     verwenden.</p>
2109
2110     <p>Beispiel:</p>
2111
2112     <example>
2113       LogLevel notice
2114     </example>
2115
2116     <note><title>Hinweis</title>
2117       <p>Beim Protokollieren in eine regul&auml;re Datei k&ouml;nnen
2118       Nachrichten des Levels <code>notice</code> nicht unterdr&uuml;ckt
2119       werden und werden daher immer protokolliert. Dies trifft allerdings
2120       nicht zu, wenn mittels <code>syslog</code> protokolliert wird.</p>
2121     </note>
2122 </usage>
2123 </directivesynopsis>
2124
2125 <directivesynopsis>
2126 <name>MaxKeepAliveRequests</name>
2127 <description>Anzahl der Anfragen, die bei einer persistenten Verbindung
2128 zul&auml;ssig sind</description>
2129 <syntax>MaxKeepAliveRequests <var>Anzahl</var></syntax>
2130 <default>MaxKeepAliveRequests 100</default>
2131 <contextlist><context>server config</context><context>virtual host</context>
2132 </contextlist>
2133
2134 <usage>
2135     <p>Die Direktive <directive>MaxKeepAliveRequests</directive>
2136     begrenzt die Anzahl der Anfragen, die pro Verbindung zul&auml;ssig sind,
2137     wenn <directive module="core" >KeepAlive</directive> eingeschaltet ist.
2138     Bei der Einstellung <code>0</code> sind unbegrenzt viele Anfragen
2139     erlaubt. Wir empfehlen f&uuml;r diese Einstellung einen hohen Wert
2140     f&uuml;r eine maximale Serverleistung.</p>
2141
2142     <p>Beispiel:</p>
2143
2144     <example>
2145       MaxKeepAliveRequests 500
2146     </example>
2147 </usage>
2148 </directivesynopsis>
2149
2150 <directivesynopsis>
2151 <name>NameVirtualHost</name>
2152 <description>Bestimmt eine IP-Adresse f&uuml;r den Betrieb namensbasierter
2153 virtueller Hosts</description>
2154 <syntax>NameVirtualHost <var>Adresse</var>[:<var>Port</var>]</syntax>
2155 <contextlist><context>server config</context></contextlist>
2156
2157 <usage>
2158     <p>Die Direktive <directive>NameVirtualHost</directive> ist erforderlich,
2159     wenn Sie <a href="../vhosts/">namensbasierte virtuelle Hosts</a>
2160     konfigurieren m&ouml;chten.</p>
2161
2162     <p>Obwohl <var>Adresse</var> eine Hostname sein kann, wird empfohlen,
2163     dass Sie stets eine IP-Adresse verwenden, z.B.:</p>
2164
2165     <example>
2166       NameVirtualHost 111.22.33.44
2167     </example>
2168
2169     <p>Mit der <directive>NameVirtualHost</directive>-Anweisung geben Sie
2170     die IP-Adresse an, unter der der Server Anfragen f&uuml;r
2171     namensbasierte virtuelle Hosts entgegennimmt. Das ist &uuml;blicherweise
2172     die Adresse, zu der die Namen Ihrer namensbasierten virtuellen Hosts
2173     aufgel&ouml;st werden. Falls eine Firewall oder ein anderer Proxy die
2174     Anfrage in Empfang nimmt und Sie zu einer weiteren IP-Adresse des Servers
2175     weiterleitet, m&uuml;ssen Sie die IP-Adresse der physikalischen
2176     Schnittstelle der Maschine angeben, welche die Anfragen bedient.
2177     Wenn Sie mehrere namensbasierte Hosts an verschiedenen Adressen
2178     betreiben, wiederholen Sie einfach die Anweisung f&uuml;r jede
2179     Adresse.</p>
2180
2181     <note><title>Anmerkung</title>
2182       <p>Beachten Sie, dass der "Hauptserver" und jeder
2183       <code>_default_</code>-Server <strong>niemals</strong> bei einer
2184       Anfrage an einer <directive>NameVirtualHost</directive>-IP-Adresse
2185       bedient wird (es sei denn, Sie geben aus irgendwelchen Gr&uuml;nden
2186       <directive>NameVirtualHost</directive> an, definieren dann aber keine
2187       <directive>VirtualHost</directive>s f&uuml;r diese Adresse).</p>
2188     </note>
2189
2190     <p>Optional k&ouml;nnen Sie die Nummer eines Ports angeben, an dem
2191     namensbasierte virtuelle Hosts verwendet werden sollen. Beispiel:</p>
2192
2193     <example>
2194       NameVirtualHost 111.22.33.44:8080
2195     </example>
2196
2197     <p>IPv6-Adressen m&uuml;ssen, wie im folgenden Beispiel angegeben, in
2198     eckige Klammern eingeschlossen werden:</p>
2199
2200     <example>
2201       NameVirtualHost [fe80::a00:20ff:fea7:ccea]:8080
2202     </example>
2203
2204     <p>Um an allen Schnittstellen Anfragen zu empfangen, k&ouml;nnen Sie
2205     <code>*</code> als Argument verwenden.</p>
2206
2207     <example>
2208       NameVirtualHost *
2209     </example>
2210
2211     <note><title>Argument der Direktive <directive
2212     type="section">VirtualHost</directive></title>
2213       <p>Beachten Sie, dass das Argument der <directive
2214       type="section">VirtualHost</directive>-Anweisung exakt auf das Argument
2215       der <directive>NameVirtualHost</directive>-Anweisung passen muss.</p>
2216
2217       <example>
2218         NameVirtualHost 1.2.3.4<br />
2219         &lt;VirtualHost 1.2.3.4&gt;<br />
2220         # ...<br />
2221         &lt;/VirtualHost&gt;<br />
2222       </example>
2223     </note>
2224 </usage>
2225 <seealso><a href="../vhosts/">Dokumentation zu virtuellen Hosts</a></seealso>
2226 </directivesynopsis>
2227
2228 <directivesynopsis>
2229 <name>Options</name>
2230 <description>Definiert, welche Eigenschaften oder Funktionen in einem
2231 bestimmten Verzeichnis verf&uuml;gbar sind</description>
2232 <syntax>Options
2233     [+|-]<var>Option</var> [[+|-]<var>Option</var>] ...</syntax>
2234 <default>Options All</default>
2235 <contextlist><context>server config</context><context>virtual host</context>
2236 <context>directory</context><context>.htaccess</context>
2237 </contextlist>
2238 <override>Options</override>
2239
2240 <usage>
2241     <p>Die Direktive <directive>Options</directive> steuert, welche
2242     Eigenschaften bzw. Funktionen in einem bestimmten Verzeichnis
2243     verf&uuml;gbar sind.</p>
2244
2245     <p><var>Option</var> kann auf <code>None</code> gesetzt werden, wobei
2246     keine der besonderen Eigenschaften verf&uuml;gbar sind, oder auf eines
2247     oder mehrere der folgenden:</p>
2248
2249     <dl>
2250       <dt><code>All</code></dt>
2251
2252       <dd>Alle Optionen au&szlig;er <code>MultiViews</code>. Dies ist
2253       die Voreinstellung.</dd>
2254
2255       <dt><code>ExecCGI</code></dt>
2256
2257       <dd>Die Ausf&uuml;hrung von CGI-Skripten, welche <module>mod_cgi</module>
2258         verwenden, ist erlaubt.</dd>
2259
2260       <dt><code>FollowSymLinks</code></dt>
2261
2262       <dd>Der Server folgt symbolischen Links in diesem Verzeichnis.
2263       <note>
2264       <p>Auch wenn der Server symbolischen Links folgt, bedeutet dies
2265       <em>nicht</em>, dass der zum Abgleich gegen <directive type="section"
2266       module="core">Directory</directive>-Abschnitte verwendete Pfadname
2267       wechselt.</p>
2268       <p>Beachten Sie auch, dass diese Option innerhalb eines
2269       <directive type="section" module="core">Location</directive>-Abschnitts
2270       <strong>ignoriert wird</strong>.</p>
2271       </note></dd>
2272
2273       <dt><code>Includes</code></dt>
2274
2275       <dd>
2276       Server Side Includes, die von <module>mod_include</module> bereitgestellt
2277       werden, sind erlaubt.</dd>
2278
2279       <dt><code>IncludesNOEXEC</code></dt>
2280
2281       <dd>Server Side Includes sind erlaubt, <code>#exec cmd</code>
2282       und <code>#exec cgi</code> sind jedoch deaktiviert. Es ist aber noch
2283       m&ouml;glich, CGI-Skripte aus
2284       <directive module="mod_alias">ScriptAlias</directive>-Verzeichnissen mittels
2285       <code>#include virtual</code> einzubinden.</dd>
2286
2287       <dt><code>Indexes</code></dt>
2288
2289       <dd>Wenn eine URL, die auf ein Verzeichnis zeigt, in dem sich keine durch
2290         <directive module="mod_dir">DirectoryIndex</directive> definierte 
2291         Indexdatei (<em>z.B.</em> <code>index.html</code>) befindet, dann liefert 
2292         <module>mod_autoindex</module> eine formatierte Auflistung des 
2293         Verzeichnisses zur&uuml;ck.</dd>
2294
2295       <dt><code>MultiViews</code></dt>
2296
2297       <dd>"MultiViews" sind bei der Verwendung von 
2298         <module>mod_negotiation</module> erlaubt (siehe <a 
2299         href="../content-negotiation.html">Content-Negotiation</a>).</dd>
2300
2301       <dt><code>SymLinksIfOwnerMatch</code></dt>
2302
2303       <dd>Der Server folgt nur symbolischen Links, bei denen die Zieldatei
2304       bzw. das Zielverzeichnis der gleichen Benutzerkennung geh&ouml;rt, wie
2305       der Link.
2306       <note><title>Anmerkung</title> Diese Option wird innerhalb eines
2307       <directive module="core" type="section">Location</directive>-Abschnitts
2308       ignoriert.</note></dd>
2309     </dl>
2310
2311     <p>Wenn mehrere <directive>Options</directive> auf ein Verzeichnis
2312     angewandt werden k&ouml;nnen, dann wird normalerweise die
2313     spezifischste <transnote>Gemeint ist die zuletzt
2314     ausgef&uuml;hrte Option.</transnote> verwendet und alle anderen werden
2315     ignoriert; die Optionen werden nicht vermischt. (Siehe auch <a
2316     href="../sections.html#mergin">Wie Abschnitte zusammengef&uuml;hrt 
2317     werden.</a>.) Wenn jedoch <em>allen</em> Optionen der 
2318     <directive>Options</directive>-Anweisung eines der Zeichen
2319     <code>+</code> oder <code>-</code> vorangestellt wird, werden die Optionen
2320     zusammengemischt. Jede Option mit vorangestelltem <code>+</code> wird
2321     zu den momentan g&uuml;ltigen Optionen hinzugef&uuml;gt und jede Option
2322     mit vorangestelltem <code>-</code> wird aus den derzeit g&uuml;ltigen
2323     Optionen entfernt.</p>
2324
2325     <p>So wird zum Beispiel ohne die Zeichen <code>+</code> und
2326     <code>-</code></p>
2327
2328     <example>
2329       &lt;Directory /web/docs&gt;<br />
2330       <indent>
2331         Options Indexes FollowSymLinks<br />
2332       </indent>
2333       &lt;/Directory&gt;<br />
2334       <br />
2335       &lt;Directory /web/docs/spec&gt;<br />
2336       <indent>
2337         Options Includes<br />
2338       </indent>
2339       &lt;/Directory&gt;
2340     </example>
2341
2342     <p>f&uuml;r das Verzeichnis <code>/web/docs/spec</code> wird jetzt
2343     lediglich <code>Includes</code> gesetzt. Wenn die zweite
2344     <directive>Options</directive>-Anweisung jedoch <code>+</code>-
2345     und <code>-</code>-Zeichen verwenden w&uuml;rde,</p>
2346
2347     <example>
2348       &lt;Directory /web/docs&gt;<br />
2349       <indent>
2350         Options Indexes FollowSymLinks<br />
2351       </indent>
2352       &lt;/Directory&gt;<br />
2353       <br />
2354       &lt;Directory /web/docs/spec&gt;<br />
2355       <indent>
2356         Options +Includes -Indexes<br />
2357       </indent>
2358       &lt;/Directory&gt;
2359     </example>
2360
2361     <p>dann w&uuml;rden die Optionen <code>FollowSymLinks</code> und
2362     <code>Includes</code> f&uuml;r das Verzeichnis <code>/web/docs/spec</code>
2363     gesetzt.</p>
2364
2365     <note><title>Anmerkung</title>
2366       <p>Die Verwendung von <code>-IncludesNOEXEC</code> oder
2367       <code>-Includes</code> deaktiviert Server Side Includes unabh&auml;ngig
2368       von der vorigen Einstellung vollst&auml;ndig.</p>
2369     </note>
2370
2371     <p>Die Voreinstellung ist <code>All</code>, sofern keine anderen Angaben
2372     gemacht wurden.</p>
2373 </usage>
2374 </directivesynopsis>
2375
2376 <directivesynopsis>
2377 <name>Require</name>
2378 <description>W&auml;hlt die authentisierten Benutzer aus, die auf eine
2379 Ressource zugreifen k&ouml;nnen</description>
2380 <syntax>Require <var>Name</var> [<var>Name</var>] ...</syntax>
2381 <contextlist><context>directory</context><context>.htaccess</context>
2382 </contextlist>
2383 <override>AuthConfig</override>
2384
2385 <usage>
2386     <p>Die Direktive w&auml;hlt aus, welche authentisierten Benutzer auf ein
2387     Verzeichnis zugreifen d&uuml;rfen. Folgende Syntax ist erlaubt:</p>
2388
2389     <dl>
2390       <dt><code>Require user <var>User-ID</var> [<var>User-ID</var>]
2391       ...</code></dt>
2392       <dd>Nur die genannten Benutzer d&uuml;rfen auf die Ressource
2393       zugreifen.</dd>
2394
2395       <dt><code>Require group <var>Gruppenname</var> [<var>Gruppenname</var>]
2396       ...</code></dt>
2397       <dd>Nur Benutzer der genannten Gruppen d&uuml;rfen auf die
2398       Ressource zugreifen.</dd>
2399
2400       <dt><code>Require valid-user</code></dt>
2401       <dd>Alle g&uuml;ltigen Benutzer d&uuml;rfen auf die Ressource
2402       zugreifen.</dd>
2403     </dl>
2404
2405     <p><directive>Require</directive> muss von den Direktiven
2406     <directive module="core">AuthName</directive> und <directive
2407     module="core">AuthType</directive> sowie Direktiven wie
2408     <directive module="mod_authn_file">AuthUserFile</directive>
2409     und <directive module="mod_authz_groupfile">AuthGroupFile</directive>
2410     (zur Definition von Benutzern und Gruppen) begleitet werden, um
2411     korrekt zu funktionieren. Beispiel:</p>
2412
2413     <example>
2414        AuthType Basic<br />
2415        AuthName "gesch&uuml;tztes Verzeichnis"<br />
2416        AuthUserFile /web/users<br />
2417        AuthGroupFile /web/groups<br />
2418        Require group admin
2419     </example>
2420
2421     <p>Zugriffskontrollen, die in dieser Form angewandt werden, gelten
2422     f&uuml;r <strong>alle</strong> Methoden. <strong>Dies ist normalerweise
2423     gew&uuml;nscht.</strong> Wenn Sie Zugriffskontrollen nur auf bestimmte
2424     Methoden anwenden m&ouml;chten, w&auml;hrend andere Methoden
2425     ungesch&uuml;tzt bleiben, dann m&uuml;ssen Sie die
2426     <directive>Require</directive>-Anweisung innerhalb eines
2427     <directive module="core" type="section">Limit</directive>-Abschnitts
2428     platzieren.</p>
2429 </usage>
2430 <seealso><directive module="core">Satisfy</directive></seealso>
2431 <seealso><module>mod_authz_host</module></seealso>
2432 </directivesynopsis>
2433
2434 <directivesynopsis>
2435 <name>RLimitCPU</name>
2436 <description>Begrenzt den CPU-Verbrauch von Prozessen, die von
2437 Apache-Kindprozessen gestartet wurden</description>
2438 <syntax>RLimitCPU <var>Sekunden</var>|max [<var>Sekunden</var>|max]</syntax>
2439 <default>unbestimmt; verwendet die Voreinstellung des Systems</default>
2440 <contextlist><context>server config</context><context>virtual host</context>
2441 <context>directory</context><context>.htaccess</context></contextlist>
2442 <override>All</override>
2443
2444 <usage>
2445     <p>Akzeptiert einen oder zwei Parameter. Der erste Paramater setzt eine
2446     weiche Ressourcenbegrenzung f&uuml;r alle Prozesse, der zweite Parameter
2447     setzt die Maximalgrenze f&uuml;r die Ressourcennutzung. Jeder der
2448     Parameter kann eine Zahl oder <code>max</code> sein. <code>max</code>
2449     zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
2450     verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
2451     erfordert, dass der Server als <code>root</code> l&auml;uft, zumindest in
2452     der anf&auml;nglichen Startphase.</p>
2453
2454     <p>Dies wird auf Prozesse angewendet, die von Anfragen bearbeitenden
2455     Apache-Kindprozessen abgespalten werden, nicht auf die
2456     Apache-Kindprozesse selbst. Das beinhaltet CGI-Skripte und
2457     SSI-exec-Befehle, nicht jedoch Prozesse, die vom Apache-Elternprozess
2458     abgespalten werden, wie z.B. Protokollierung.</p>
2459
2460     <p>CPU-Ressourcenbegrenzung wird in Sekunden pro Prozess
2461     ausgedr&uuml;ckt.</p>
2462 </usage>
2463 <seealso><directive module="core">RLimitMEM</directive></seealso>
2464 <seealso><directive module="core">RLimitNPROC</directive></seealso>
2465 </directivesynopsis>
2466
2467 <directivesynopsis>
2468 <name>RLimitMEM</name>
2469 <description>Begrenzt den Speicherverbrauch von Prozessen, die von
2470 Apache-Kindprozessen gestartet wurden</description>
2471 <syntax>RLimitMEM <var>Bytes</var>|max [<var>Bytes</var>|max]</syntax>
2472 <default>unbestimmt; verwendet die Voreinstellung des Systems</default>
2473 <contextlist><context>server config</context><context>virtual host</context>
2474 <context>directory</context><context>.htaccess</context></contextlist>
2475 <override>All</override>
2476
2477 <usage>
2478     <p>Akzeptiert einen oder zwei Parameter. Der erste Paramater setzt eine
2479     weiche Ressourcenbegrenzung f&uuml;r alle Prozesse, der zweite Parameter
2480     setzt die Maximalgrenze f&uuml;r die Ressourcennutzung. Jeder der
2481     Parameter kann eine Zahl oder <code>max</code> sein. <code>max</code>
2482     zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
2483     verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
2484     erfordert, dass der Server als <code>root</code> l&auml;uft, zumindest in
2485     der anf&auml;nglichen Startphase.</p>
2486
2487     <p>Dies wird auf Prozesse angewendet, die von Anfragen bearbeitenden
2488     Apache-Kindprozessen abgespalten werden, nicht auf die
2489     Apache-Kindprozesse selbst. Das beinhaltet CGI-Skripte und
2490     SSI-exec-Befehle, nicht jedoch Prozesse, die vom Apache-Elternprozess
2491     abgespalten werden, wie z.B. Protokollierung.</p>
2492
2493     <p>Die Begrenzung des Speicherverbrauchs wird in Bytes pro Prozess
2494     ausgedr&uuml;ckt.</p>
2495 </usage>
2496 <seealso><directive module="core">RLimitCPU</directive></seealso>
2497 <seealso><directive module="core">RLimitNPROC</directive></seealso>
2498 </directivesynopsis>
2499
2500 <directivesynopsis>
2501 <name>RLimitNPROC</name>
2502 <description>Begrenzt die Anzahl der Prozesse, die von Prozessen gestartet
2503 werden k&ouml;nnen, der ihrerseits von Apache-Kinprozessen gestartet
2504 wurden</description>
2505 <syntax>RLimitNPROC <var>Zahl</var>|max [<var>Zahl</var>|max]</syntax>
2506 <default>unbestimmt; verwendet die Voreinstellung des Systems</default>
2507 <contextlist><context>server config</context><context>virtual host</context>
2508 <context>directory</context><context>.htaccess</context></contextlist>
2509 <override>All</override>
2510
2511 <usage>
2512     <p>Akzeptiert einen oder zwei Parameter. Der erste Paramater setzt eine
2513     weiche Ressourcenbegrenzung f&uuml;r alle Prozesse, der zweite Parameter
2514     setzt die Maximalgrenze f&uuml;r die Ressourcennutzung. Jeder der
2515     Parameter kann eine Zahl oder <code>max</code> sein. <code>max</code>
2516     zeigt dem Server an, dass das vom Betriebssystem erlaubte Maximum
2517     verwendet werden soll. Das Anheben der maximal erlaubten Ressourcennutzung
2518     erfordert, dass der Server als <code>root</code> l&auml;uft, zumindest in
2519     der anf&auml;nglichen Startphase.</p>
2520
2521     <p>Dies wird auf Prozesse angewendet, die von Anfragen bearbeitenden
2522     Apache-Kindprozessen abgespalten werden, nicht auf die
2523     Apache-Kindprozesse selbst. Dies beinhaltet CGI-Skripte und
2524     SSI-exec-Befehle, nicht jedoch Prozesse, die vom Apache-Elternprozess
2525     abgespalten werden, wie z.B. Protokollierung.</p>
2526
2527     <p>Prozessbegrenzungen steuern die Anzahl der Prozesse pro Benutzer.</p>
2528
2529     <note><title>Anmerkung</title>
2530       <p>Wenn CGI-Prozesse nicht unter anderen Benutzerkennungen als der
2531       User-ID des Webservers laufen, dann beschr&auml;nkt diese Direktive
2532       die Anzahl der Prozesse, die der Server selbst erstellen kann.
2533       Kennzeichen einer solchen Situation sind
2534       <strong><code>cannot fork</code></strong>-Meldungen
2535       <transnote><code>kann nicht abspalten</code></transnote> in der
2536       Datei <code>error_log</code>.</p>
2537     </note>
2538 </usage>
2539 <seealso><directive module="core">RLimitMEM</directive></seealso>
2540 <seealso><directive module="core">RLimitCPU</directive></seealso>
2541 </directivesynopsis>
2542
2543 <directivesynopsis>
2544 <name>Satisfy</name>
2545 <description>Zusammenspiel von rechnerbasierter Zugriffskontrolle und
2546 Benutzerauthentisierung</description>
2547 <syntax>Satisfy Any|All</syntax>
2548 <default>Satisfy All</default>
2549 <contextlist><context>directory</context><context>.htaccess</context>
2550 </contextlist>
2551 <override>AuthConfig</override>
2552
2553 <usage>
2554     <p>Verfahrensweise f&uuml;r den Zugriff, falls sowohl <directive
2555     module="mod_authz_host">Allow</directive> als auch <directive
2556     module="core">Require</directive> verwendet werden. Der Parameter kann
2557     entweder <code>All</code> oder <code>Any</code> sein. Die Direktive ist
2558     nur dann n&uuml;tzlich, wenn der Zugriff zu einem bestimmten Bereich
2559     durch Benutzername/Passwort <em>und</em> Clientrechner-Adressen
2560     eingeschr&auml;nkt ist. In diesem Fall verlangt die Voreinstellung
2561     (<code>All</code>), dass der Client die Adressbeschr&auml;nkung passiert
2562     <em>und</em> eine g&uuml;ltige Benutzerkennung und ein g&uuml;ltiges
2563     Passwort &uuml;bermittelt. Mit der Auswahl <code>Any</code> wird dem
2564     Client der Zugriff erlaubt, wenn er entweder die Rechner-Besch&auml;nkung
2565     passiert oder einen g&uuml;ltigen Benutzernamen und ein g&uuml;ltiges
2566     Passwort &uuml;bermittelt. Dies kann verwendet werden, um einen Bereich
2567     mit einem Passwort zu sch&uuml;tzen, jedoch Clients von bestimmten
2568     Adressen ohne Abfrage des Passwortes zuzulassen.</p>
2569
2570     <p>Wenn Sie beispielsweise m&ouml;chten, dass Personen aus Ihrem
2571     privaten Netzwerk unbech&auml;nkten Zugriff zu Teilen Ihres
2572     Webangebots haben, jedoch verlangen, dass Personen au&szlig;erhalb
2573     Ihres privaten Netzwerks ein Passwort &uuml;bergeben m&uuml;ssen,
2574     k&ouml;nnen Sie eine Konfiguration &auml;hnlich der folgenden
2575     verwenden:</p>
2576
2577     <example>
2578       Require valid-user<br />
2579       Allow from 192.168.1<br />
2580       Satisfy Any
2581     </example>
2582 </usage>
2583    <seealso><directive module="mod_authz_host">Allow</directive></seealso>
2584    <seealso><directive module="core">Require</directive></seealso>
2585 </directivesynopsis>
2586
2587 <directivesynopsis>
2588 <name>ScriptInterpreterSource</name>
2589 <description>Methode zur Ermittlung des Interpreters von
2590 CGI-Skripten</description>
2591 <syntax>ScriptInterpreterSource Registry|Registry-Strict|Script</syntax>
2592 <default>ScriptInterpreterSource Script</default>
2593 <contextlist><context>server config</context><context>virtual host</context>
2594 <context>directory</context><context>.htaccess</context></contextlist>
2595 <override>FileInfo</override>
2596 <compatibility>ausschlie&szlig;lich Win32;
2597 Die Option <code>Registry-Strict</code> ist verf&uuml;gbar seit Apache
2598 2.0.</compatibility>
2599
2600 <usage>
2601     <p>Die Direktive steuert, wie der Apache den Interpreter zur Ausf&uuml;hrung
2602     von CGI-Skripten bestimmt. Die Voreinstellung ist <code>Script</code>. Dies
2603     veranla&szlig;t den Apache, den Interpreter zu verwenden, auf den die
2604     Shebang-Zeile (erste Zeile, beginnt mit <code>#!</code>) im Skript zeigt.
2605     Auf Win32-Systemen sieht diese Zeile &uuml;blicherweise so aus:</p>
2606
2607     <example>
2608       #!C:/Perl/bin/perl.exe
2609     </example>
2610
2611     <p>oder, wenn perl im Pfad (Umgebungsvariable <code>PATH</code>) liegt,
2612       einfach:</p>
2613
2614     <example>
2615       #!perl
2616     </example>
2617
2618     <p>Die Einstellung <code>ScriptInterpreterSource Registry</code>
2619     veranla&szlig;t eine Suche in <code>HKEY_CLASSES_ROOT</code> der
2620     Windows-Registrierungsdatenbank und verwendet die Endung der Skript-Datei
2621     (z.B. <code>.pl</code>) als Suchargument. Der durch den Unterschl&uuml;ssel
2622     <code>Shell\ExecCGI\Command</code> oder, falls dieser nicht existiert,
2623     <code>Shell\Open\Command</code> definierte Befehl wird zum &Ouml;ffnen der
2624     Skript-Datei verwendet. Wenn der Schl&uuml;ssel zur Dateiendung oder
2625     beide Unterschl&uuml;ssel fehlen, dann verwendet der Apache die Option
2626     <code>Script</code>.</p>
2627
2628     <note type="warning"><title>Sicherheit</title>
2629       <p>Seien Sie vorsichtig, <code>ScriptInterpreterSource Registry</code> bei
2630       Verzeichnissen zu verwenden, auf die eine <directive
2631         module="mod_alias">ScriptAlias</directive>-Anweisung zeigt, denn der
2632       Apache versucht <strong>jede</strong> Datei innerhalb des Verzeichnisses
2633       auszuf&uuml;hren. Die Einstellung <code>Registry</code> kann
2634       unerw&uuml;nschte Programmaufrufe bei Dateien verursachen, die
2635       &uuml;blicherweise nicht ausgef&uuml;hrt werden. Auf den meisten
2636       Windows-Systemen beispielsweise startet der voreingestellte
2637       &Ouml;ffnen-Befehl f&uuml;r <code>.htm</code>-Dateien den Microsoft
2638       Internet Explorer, so dass jede HTTP-Anfrage nach einer existierenden
2639       <code>.htm</code>-Datei im Skript-Verzeichnis den Browser im Hintergrund
2640       starten w&uuml;rde. Dies ist eine wirksame Methode, Ihr System binnen
2641       etwa einer Minute zum Absturz zu bringen.</p>
2642     </note>
2643           
2644     <p>Die seit Apache 2.0 neue Option <code>Registry-Strict</code>
2645     macht das gleiche wie <code>Registry</code>, verwendet jedoch nur den
2646     Unterschl&uuml;ssel <code>Shell\ExecCGI\Command</code>. Der Schl&uuml;ssel
2647     <code>ExecCGI</code> ist gew&ouml;hnlich nicht voreingestellt. Er muss
2648     manuell eingerichtet werden und sch&uuml;tzt Ihr System so for
2649     versehentlichen Programmaufrufen.</p>
2650 </usage>
2651 </directivesynopsis>
2652
2653 <directivesynopsis>
2654 <name>ServerAdmin</name>
2655 <description>E-Mail-Adresse, die der Server in Fehlermeldungen einf&uuml;gt,
2656 welche an den Client gesendet werden</description>
2657 <syntax>ServerAdmin <var>E-Mail-Adresse</var></syntax>
2658 <contextlist><context>server config</context><context>virtual host</context>
2659 </contextlist>
2660
2661 <usage>
2662     <p><directive>ServerAdmin</directive> legt die E-Mail-Adresse fest,
2663     die der Server in jede Fehlermeldung einf&uuml;gt, die er an den
2664     Client zur&uuml;ckschickt.</p>
2665
2666     <p>Es kann sich lohnen, hierf&uuml;r eine reservierte Adresse
2667     anzugeben, z.B.</p>
2668
2669     <example>
2670       ServerAdmin www-admin@foo.example.com
2671     </example>
2672
2673     <p>da Anwender nicht unbedingt erw&auml;hnen, dass sie vom Server
2674     sprechen!</p>
2675 </usage>
2676 </directivesynopsis>
2677
2678 <directivesynopsis>
2679 <name>ServerAlias</name>
2680 <description>Alternativer Name f&uuml;r einen Host, der verwendet wird, wenn
2681 Anfragen einem namensbasierten virtuellen Host zugeordnet werden</description>
2682 <syntax>ServerAlias <var>Hostname</var> [<var>Hostname</var>] ...</syntax>
2683 <contextlist><context>virtual host</context></contextlist>
2684
2685 <usage>
2686     <p>Die Direktive <directive>ServerAlias</directive> bestimmt die
2687     alternativen Namen eines Hosts zur Verwendung mit <a
2688     href="../vhosts/name-based.html">namensbasierten virtuellen Hosts</a>.</p>
2689
2690     <example>
2691       &lt;VirtualHost *&gt;<br />
2692       ServerName server.domain.com<br />
2693       ServerAlias server server2.domain.com server2<br />
2694       # ...<br />
2695       &lt;/VirtualHost&gt;
2696     </example>
2697 </usage>
2698 <seealso><a href="../vhosts/">Apache-Dokumentation zu virtuellen
2699   Hosts</a></seealso>
2700 </directivesynopsis>
2701
2702 <directivesynopsis>
2703 <name>ServerName</name>
2704 <description>Rechnername und Port, die der Server dazu verwendet, sich
2705 selbst zu identifizieren</description>
2706 <syntax>ServerName
2707 <var>voll-qualifizierter-Domainname</var>[:<var>port</var>]</syntax>
2708 <contextlist><context>server config</context><context>virtual host</context>
2709 </contextlist>
2710 <compatibility>Diese Direktive l&ouml;st in Version 2.0 die
2711      Funktionalit&auml;t der Direktive <directive>Port</directive> aus
2712      Version 1.3 ab.</compatibility>
2713
2714 <usage>
2715     <p>Die Direktive <directive>ServerName</directive> bestimmt den
2716     Rechnernamen und Port, den der Server dazu verwendet, sich selbst
2717     zu identifizieren. Diese werden bei der Erstellung von Umleitungs-URLs
2718     ben&ouml;tigt. Wenn beispielsweise der Name der Maschine, die den Webserver
2719     beherbergt, <code>simple.example.com</code> lautet, die Maschine jedoch
2720     auch einen DNS-Alias <code>www.example.com</code> besitzt und Sie den
2721     Webserver so identifizieren m&ouml;chten, sollten Sie die folgende
2722     Anweisung verwenden:</p>
2723
2724     <example>
2725       ServerName www.example.com:80
2726     </example>
2727
2728     <p>Wenn kein <directive>ServerName</directive> angegeben wurde,
2729     dann versucht der Server den Rechnernamen mittels eines Reverse-Lookup
2730     herzuleiten. Wenn kein Post im Servernamen angegeben wurde, dann
2731     verwendet der Server den Port der eingegangenen Anfrage. F&uuml;r eine
2732     optimale Zuverl&auml;ssigkeit und Berechenbarkeit sollten Sie einen
2733     eindeutigen Rechnernamen und Port angeben, in dem Sie die Direktive
2734     <directive>ServerName</directive> verwenden.</p>
2735
2736     <p>Wenn Sie <a href="../vhosts/name-based.html">namensbasierte
2737     virtuelle Hosts</a> verwenden, gibt <directive>ServerName</directive>
2738     innerhalb eines <directive type="section"
2739     module="core">VirtualHost</directive>-Abschnitts an, welcher
2740     Hostname im <code>Host:</code>-Header der Anfrage auftauchen muss,
2741     damit sie diesem virtuellen Host zugeordnet wird.</p>
2742
2743     <p>Lesen Sie bitte die Beschreibung der Direktive <directive
2744     module="core">UseCanonicalName</directive> f&uuml;r Einstellungen, die
2745     bestimmen, ob selbstreferenzierende URLs (z.B. vom Modul
2746     <module>mod_dir</module>) auf den angegebenen Port zeigen oder auf die
2747     Portnummern die in der Anfrage des Clients angegeben ist.</p>
2748 </usage>
2749
2750 <seealso><a href="../dns-caveats.html">Probleme bez&uuml;glich DNS und
2751 Apache</a></seealso>
2752 <seealso><a href="../vhosts/">Apache-Dokumentation zu virtuellen
2753   Hosts</a></seealso>
2754 <seealso><directive module="core">UseCanonicalName</directive></seealso>
2755 <seealso><directive module="core">NameVirtualHost</directive></seealso>
2756 <seealso><directive module="core">ServerAlias</directive></seealso>
2757 </directivesynopsis>
2758
2759 <directivesynopsis>
2760 <name>ServerPath</name>
2761 <description>Veralteter URL-Pfad f&uuml;r einen namensbasierten
2762 virtuellen Host, auf den von einem inkompatiblen Browser zugegriffen
2763 wird</description>
2764 <syntax>ServerPath <var>URL-Pfad</var></syntax>
2765 <contextlist><context>virtual host</context></contextlist>
2766
2767 <usage>
2768     <p>Die Direktive <directive>ServerPath</directive> legt den
2769     veralteten <transnote>Gemeint ist eigentlich "Altlast" aufgrund
2770     antiquierter Clients.</transnote> URL-Pfad eines Hosts zur Verwendung mit
2771     <a href="../vhosts/">namensbasierten virtuellen Hosts</a> fest.</p>
2772 </usage>
2773 <seealso><a href="../vhosts/">Apache-Dokumentation zu virtuellen
2774   Hosts</a></seealso>
2775 </directivesynopsis>
2776
2777 <directivesynopsis>
2778 <name>ServerRoot</name>
2779 <description>Basisverzeichnis der Serverinstallation</description>
2780 <syntax>ServerRoot <var>Verzeichnis</var></syntax>
2781 <default>ServerRoot /usr/local/apache</default>
2782 <contextlist><context>server config</context></contextlist>
2783
2784 <usage>
2785     <p>Die Direktive <directive>ServerRoot</directive> bestimmt das
2786     Verzeichnis, in dem der Server installiert ist. &Uuml;blicherweise
2787     enth&auml;lt es die Unterverzeichnisse <code>conf/</code> und
2788     <code>logs/</code>. Relative Pfadangaben f&uuml;r andere
2789     Konfigurationsdateien werden relativ zu diesem Verzeichnis betrachtet.</p>
2790
2791     <example><title>Beispiel</title>
2792       ServerRoot /home/httpd
2793     </example>
2794 </usage>
2795 <seealso><a href="../invoking.html">Die <code>httpd</code>-Option
2796     <code>-d</code></a></seealso>
2797 <seealso><a href="../misc/security_tips.html#serverroot">Sicherheitshinweise</a>
2798     f&uuml;r Informationen, wie die Rechte auf das <directive
2799     >ServerRoot</directive>-Verzeichnis richtig gesetzt werden</seealso>
2800 </directivesynopsis>
2801
2802 <directivesynopsis>
2803 <name>ServerSignature</name>
2804 <description>Konfiguriert die Fu&szlig;zeile von servergenerierten
2805 Dokumenten</description>
2806 <syntax>ServerSignature On|Off|EMail</syntax>
2807 <default>ServerSignature Off</default>
2808 <contextlist><context>server config</context><context>virtual host</context>
2809 <context>directory</context><context>.htaccess</context>
2810 </contextlist>
2811 <override>All</override>
2812
2813 <usage>
2814     <p>Die Direktive <directive>ServerSignature</directive> erm&ouml;glicht
2815     die Gestaltung einer unter servergenerierten Dokumenten (z.B.
2816     Fehlerdokumente, FTP-Verzeichnislisten von <module>mod_proxy</module>,
2817     <module>mod_info</module>-Ausgaben, ...) angef&uuml;gten
2818     Fu&szlig;zeile. Ein m&ouml;glicher Grund f&uuml;r die Aktivierung einer
2819     solchen Fu&szlig;zeile ist, dass der Anwender bei einer Kette von
2820     Proxy-Servern oft keine M&ouml;glichkeit hat, zu erkennen, welcher der
2821     verketteten Server gegenw&auml;rtig die zur&uuml;ckgegebene Fehlermeldung
2822     produziert hat.</p>
2823
2824     <p>Die (Vor-)Einstellung <code>Off</code> unterdr&uuml;ckt die
2825     Fu&szlig;zeile (und ist damit kompatibel zum Verhalten des Apache 1.2 und
2826     fr&uuml;her). Die Einstellung <code>On</code> f&uuml;gt schlicht eine
2827     Zeile mit der Versionsnummer des Servers und dem Servernamen (<directive
2828     module="core">ServerName</directive>) des bedienenden virtuellen Hosts an.
2829     Die Einstellung <code>EMail</code> erstellt zus&auml;tzlich einen
2830     "mailto:"-Verweis zum Serveradministrator (<directive
2831     module="core">ServerAdmin</directive>) des referenzierten Dokuments.</p>
2832
2833     <p>Ab Version 2.0.44 werden die Details der angegebenen Versionsnummer des
2834     Servers von der Direktive  <directive
2835     module="core">ServerTokens</directive> kontrolliert.</p>
2836 </usage>
2837 <seealso><directive module="core">ServerTokens</directive></seealso>
2838 </directivesynopsis>
2839
2840 <directivesynopsis>
2841 <name>ServerTokens</name>
2842 <description>Konfiguriert den HTTP-Response-Header
2843 <code>Server</code></description>
2844 <syntax>ServerTokens Major|Minor|Min[imal]|Prod[uctOnly]|OS|Full</syntax>
2845 <default>ServerTokens Full</default>
2846 <contextlist><context>server config</context></contextlist>
2847
2848 <usage>
2849     <p>die Direktive steuert, ob der Response-Header <code>Server</code>,
2850     der an den Client zur&uuml;ckgesendet wird, eine Beschreibung des
2851     allgemeinen Betriesbsystemtyps des Servers wie auch Informationen
2852     &uuml;ber einkompilierte Module enth&auml;lt.</p>
2853
2854     <dl>
2855       <dt><code>ServerTokens Prod[uctOnly]</code></dt>
2856
2857       <dd>Der Server sendet (<em>z.B.</em>): <code>Server:
2858       Apache</code></dd>
2859
2860       <dt><code>ServerTokens Major</code></dt>
2861
2862       <dd>Der Server sendet (<em>z.B.</em>): <code>Server:
2863       Apache/2</code></dd>
2864
2865       <dt><code>ServerTokens Minor</code></dt>
2866
2867       <dd>Der Server sendet (<em>z.B.</em>): <code>Server:
2868       Apache/2.0</code></dd>
2869
2870       <dt><code>ServerTokens Min[imal]</code></dt>
2871
2872       <dd>Der Server sendet (<em>z.B.</em>): <code>Server:
2873       Apache/2.0.41</code></dd>
2874
2875       <dt><code>ServerTokens OS</code></dt>
2876
2877       <dd>Der Server sendet (<em>z.B.</em>): <code>Server: Apache/2.0.41
2878       (Unix)</code></dd>
2879
2880       <dt><code>ServerTokens Full</code> (oder nicht angegeben)</dt>
2881
2882       <dd>Der Server sendet (<em>z.B.</em>): <code>Server: Apache/2.0.41
2883       (Unix) PHP/4.2.2 MyMod/1.2</code></dd>
2884     </dl>
2885
2886     <p>Diese Einstellung gilt f&uuml;r den gesamten Server und kann nicht
2887     auf Virtual-Host-Basis aktiviert oder deaktiviert werden.</p>
2888
2889     <p>Ab Version 2.0.44 steuert diese Direktive auch die Informationen, die
2890     durch die Direktive <directive module="core">ServerSignature</directive>
2891     angeboten werden.</p>
2892 </usage>
2893 <seealso><directive module="core">ServerSignature</directive></seealso>
2894 </directivesynopsis>
2895
2896 <directivesynopsis>
2897 <name>SetHandler</name>
2898 <description>Erzwingt die Verarbeitung aller passenden Dateien durch
2899 einen Handler</description>
2900 <syntax>SetHandler <var>Handlername</var>|None</syntax>
2901 <contextlist><context>server config</context><context>virtual host</context>
2902 <context>directory</context><context>.htaccess</context>
2903 </contextlist>
2904 <override>FileInfo</override>
2905 <compatibility>Seit Apache 2.0 im Core</compatibility>
2906
2907 <usage>
2908     <p>Wenn die Direktive innerhalb einer <code>.htaccess</code>-Datei
2909     oder in einem <directive type="section"
2910     module="core">Directory</directive>- oder
2911     <directive type="section" module="core">Location</directive>-Abschnitt
2912     angegeben wird, erzwingt sie, dass alle entsprechenden Dateien von dem
2913     durch <var>Handlername</var> angegebenen <a
2914     href="../handler.html">Handler</a> analysiert werden. Wenn Sie
2915     beispielsweise ein Verzeichnis haben, dessen Dateien unabh&auml;ngig von
2916     der Endung g&auml;nzlich als Image-Maps interpretiert werden sollen,
2917     k&ouml;nnen Sie folgendes in eine <code>.htaccess</code>-Datei in
2918     dem Verzeichnis schreiben:</p>
2919
2920     <example>
2921       SetHandler imap-file
2922     </example>
2923
2924     <p>Noch ein Beispiel: wenn Sie den Server immer, wenn die URL
2925     <code>http://servername/status</code> aufgerufen wird, einen
2926     Statusbericht anzeigen lassen m&ouml;chten, dann k&ouml;nnen
2927     Sie folgendes in die <code>httpd.conf</code> schreiben:</p>
2928
2929     <example>
2930       &lt;Location /status&gt;<br />
2931       <indent>
2932         SetHandler server-status<br />
2933       </indent>
2934       &lt;/Location&gt;
2935     </example>
2936     <p>Sie k&ouml;nnen eine zuvor definierte
2937     <directive>SetHandler</directive>-Anweisung aufheben, indem Sie den Wert
2938     <code>None</code> verwenden.</p>
2939 </usage>
2940 <seealso><directive module="mod_mime">AddHandler</directive></seealso>
2941 </directivesynopsis>
2942
2943 <directivesynopsis>
2944 <name>SetInputFilter</name>
2945 <description>Bestimmt die Filter, die Client-Anfragen und POST-Eingaben
2946 verarbeiten</description>
2947 <syntax>SetInputFilter <var>Filter</var>[;<var>Filter</var>...]</syntax>
2948 <contextlist><context>server config</context><context>virtual host</context>
2949 <context>directory</context><context>.htaccess</context>
2950 </contextlist>
2951 <override>FileInfo</override>
2952
2953 <usage>
2954     <p>Die Direktive <directive>SetInputFilter</directive> bestimmt den oder
2955     die Filter, die Client-Anfragen und POST-Eingaben verarbeiten, wenn
2956     sie vom Server empfangen werden. Diese gelten zus&auml;tzlich zu
2957     anderweitig definierten Filtern, einschlie&szlig;lich denen der Direktive
2958     <directive module="mod_mime">AddInputFilter</directive>.</p>
2959
2960     <p>Wenn mehr als ein Filter angegeben wird, dann m&uuml;ssen diese
2961     durch Semikolon voneinander getrennt in der Reihenfolge angegeben werden,
2962     in der sie die Daten verarbeiten sollen.</p>
2963 </usage>
2964 <seealso><a href="../filter.html">Filter</a>-Dokumentation</seealso>
2965 </directivesynopsis>
2966
2967 <directivesynopsis>
2968 <name>SetOutputFilter</name>
2969 <description>Bestimmt die Filter, die Antworten des Servers verarbeiten</description>
2970 <syntax>SetOutputFilter <var>Filter</var>[;<var>Filter</var>...]</syntax>
2971 <contextlist><context>server config</context><context>virtual host</context>
2972 <context>directory</context><context>.htaccess</context>
2973 </contextlist>
2974 <override>FileInfo</override>
2975
2976 <usage>
2977     <p>Die Direktive <directive>SetOutputFilter</directive> bestimmt
2978     die Filter, die Antworten des Servers verarbeiten, bevor sie an den
2979     Client gesendet werden. Diese gelten zus&auml;tzlich zu anderweitig
2980     definierten Filtern, einschlie&szlig;lich denen der Direktive
2981     <directive module="mod_mime">AddOutputFilter</directive>.</p>
2982
2983     <p>Die folgende Konfiguration verarbeitet zum Beispiel alle Dateien
2984     im Verzeichnis <code>/www/data</code> als Server Side Includes.</p>
2985
2986     <example>
2987       &lt;Directory /www/data/&gt;<br />
2988       <indent>
2989         SetOutputFilter INCLUDES<br />
2990       </indent>
2991       &lt;/Directory&gt;
2992     </example>
2993
2994     <p>Wenn mehr als ein Filter angegeben wird, dann m&uuml;ssen diese
2995     durch Semikolon voneinander getrennt in der Reihenfolge angegeben werden,
2996     in der sie die Daten verarbeiten sollen.</p>
2997 </usage>
2998 <seealso><a href="../filter.html">Filter</a>-Dokumentation</seealso>
2999 </directivesynopsis>
3000
3001 <directivesynopsis>
3002 <name>TimeOut</name>
3003 <description>Zeitspanne, die der Server auf verschiedene Ereignisse wartet,
3004 bevor er die Anfrage abbricht</description>
3005 <syntax>TimeOut <var>Sekunden</var></syntax>
3006 <default>TimeOut 300</default>
3007 <contextlist><context>server config</context></contextlist>
3008
3009 <usage>
3010                 <p>Die Direktive <directive>TimeOut</directive> definiert derzeit die
3011     Zeitspanne, die der Apache auf drei Dinge wartet:</p>
3012
3013     <ol>
3014       <li>Die gesamte Zeispanne, die ben&ouml;tigt wird, um eine GET-Anfrage
3015       zu empfangen.</li>
3016
3017       <li>Die Zeitspanne zwischen dem Empfang von TCP-Paketen einer
3018       POST- oder PUT-Anfrage.</li>
3019
3020       <li>Die Zeitspanne zwischen ACKs bei der &Uuml;bermittlung der
3021       TCP-Pakete der Antwort.</li>
3022     </ol>
3023
3024     <p>Wir haben vor, diese Zeitspannen in Zukunft separat konfigurierbar zu
3025     machen. Vor Version 1.2 war der Zeitgeber auf 1200 voreingestellt, wurde
3026     dann aber auf 300 herabgesetzt, was immer noch weit mehr ist, als in den
3027     meisten Situationen ben&ouml;tigt wird. Die Voreinstellung wurde nicht
3028     weiter herabgesetzt, da gelegentlich noch Stellen im Code existieren
3029     k&ouml;nnen, wo der Zeitgeber nicht zur&uuml;ckgesetzt wird, wenn ein
3030     Paket verschickt wird.</p>
3031 </usage>
3032 </directivesynopsis>
3033
3034 <directivesynopsis>
3035 <name>UseCanonicalName</name>
3036 <description>Bestimmt, wie der Server seinen eigenen Namen und Port
3037 ermittelt</description>
3038 <syntax>UseCanonicalName On|Off|DNS</syntax>
3039 <default>UseCanonicalName On</default>
3040 <contextlist><context>server config</context><context>virtual host</context>
3041 <context>directory</context></contextlist>
3042
3043 <usage>
3044     <p>In vielen Situationen muss der Apache eine
3045     <em>selbstreferenzierende</em> URL -- d.h. eine URL, die auf den selben
3046     Server zur&uuml;ck verweist -- zusammenbauen. Bei <code>UseCanonicalName
3047     On</code> verwendet der Apache den Hostnamen und Port, der in der
3048     <directive module="core">ServerName</directive>-Anweisung angegeben ist,
3049     um den kanonischen Namen des Servers zu erstellen. Dieser Name wird in
3050     allen selbstreferenzierenden URLs sowie in CGI-Skripten f&uuml;r die
3051     Werte von <code>SERVER_NAME</code> und <code>SERVER_PORT</code>
3052     verwendet.</p>
3053
3054     <p>Bei <code>UseCanonicalName Off</code> bildet der Apache
3055     selbstreferenzierende URLs, indem er den vom Client &uuml;bermittelten
3056     Hostnamen und Port verwendet, sofern diese vorhanden sind (andernfalls
3057     wird der kanonische Name, wie oben beschrieben, benutzt). Die Werte
3058     sind die gleichen, die zur Anwendung von <a
3059     href="../vhosts/name-based.html">namensbasierten virtuellen Hosts</a>
3060     verwendet werden, und sie sind mit den gleichen Clients verf&uuml;gbar
3061     <transnote>, die auch in der Lage sind, auf namensbasierte virtuelle Hosts
3062     zuzugreifen, d.h. einen <code>Host</code>-Header mitschicken</transnote>.
3063     Die CGI-Variablen <code>SERVER_NAME</code> und <code>SERVER_PORT</code>
3064     werden ebenfalls aus den vom Client angeboten Werten erstellt.</p>
3065
3066     <p>Ein Intranet-Server, auf den Anwender mit kurzen Namen wie
3067     <code>www</code> zugreifen, ist ein Beispiel, wo dies sinnvoll sein kann.
3068     Sie werden bemerken, dass der Apache den Benutzer auf
3069     <code>http://www.domain.com/splat/</code> umleitet, wenn dieser einen
3070     Kurznamen und eine URL, die einem Verzeichnis entspricht, ohne
3071     abschlie&szlig;enden Schr&auml;gstrich eingibt, wie z.B.
3072     <code>http://www/splat</code>. Wenn Sie Authentisierung aktiviert haben,
3073     bewirkt dies, dass der Benutzer sich zweimal identifizieren muss
3074     (einmal f&uuml;r <code>www</code> und noch einmal f&uuml;r
3075     <code>www.domain.com</code> -- lesen Sie f&uuml;r weitere Informationen <a
3076     href="http://httpd.apache.org/docs/misc/FAQ.html#prompted-twice">die
3077     FAQ zu diesem Thema</a>). Wenn <directive>UseCanonicalName</directive>
3078     jedoch auf <code>Off</code> gesetzt ist, denn wird der Apache zu
3079     <code>http://www/splat/</code> umleiten.</p>
3080
3081     <p>Es existiert noch eine dritte Option, <code>UseCanonicalName DNS</code>,
3082     die f&uuml;r den Betrieb von IP-basierten Massen-Virtual-Hosts gedacht ist,
3083     um antiquierte Clients zu unterst&uuml;tzen, die keinen
3084     <code>Host:</code>-Header bereit stellen. Um selbstreferenzierende
3085     URLs zu ermitteln, f&uuml;hrt der Apache bei dieser Option ein
3086     Reverse-DNS-Lookup auf die IP-Adresse des Servers aus, zu der der Client
3087     Verbindung aufgenommen hat.</p>
3088
3089     <note type="warning"><title>Warnung</title>
3090       <p>Wenn CGI-Skripte Vermutungen aufgrund des Wertes von
3091       <code>SERVER_NAME</code> anstellen, k&ouml;nnen sie durch diese
3092       Option fehlschlagen. Clients steht es im Wesentlichen frei, einen Wert
3093       f&uuml;r den Hostnamen anzugeben, wie er will. Wenn das
3094       CGI-Skript <code>SERVER_NAME</code> jedoch lediglich dazu verwendet,
3095       selbstreferenzierende URLs zu erstellen, sollte das gerade noch
3096       in Ordnung sein.</p>
3097     </note>
3098 </usage>
3099 <seealso><directive module="core">ServerName</directive></seealso>
3100 <seealso><directive module="mpm_common">Listen</directive></seealso>
3101 </directivesynopsis>
3102
3103 <directivesynopsis type="section">
3104 <name>VirtualHost</name>
3105 <description>Enth&auml;lt Direktiven, die nur auf bestimmte Hostnamen oder
3106 IP-Adressen angewendet werden</description>
3107 <syntax>&lt;VirtualHost
3108     <var>Adresse</var>[:<var>Port</var>] [<var>Adresse</var>[:<var>Port</var>]]
3109     ...&gt; ... &lt;/VirtualHost&gt;</syntax>
3110 <contextlist><context>server config</context></contextlist>
3111
3112 <usage>
3113     <p><directive type="section">VirtualHost</directive> und
3114     <code>&lt;/VirtualHost&gt;</code> werden dazu verwendet, eine Gruppe
3115     von Direktiven zusammenzufassen, die nur auf einen bestimmten virtuellen
3116     Host angewendet werden. Jede Direktive, die im Virtual-Host-Kontext
3117     zul&auml;ssig ist, kann verwendet werden. Wenn der Server eine Anfrage
3118     f&uuml;r ein bestimmtes Dokument eines bestimmten virtuellen Hosts
3119     empf&auml;ngt, dann benutzt er die im
3120     <directive type="section">VirtualHost</directive>-Container enthaltenen
3121     Konfigurationsanweisungen. <var>Adresse</var> kann sein:</p>
3122
3123     <ul>
3124       <li>Die IP-Adresse des virtuellen Hosts.</li>
3125
3126       <li>Ein voll qualifizierter Domainname f&uuml;r die IP-Adresse des
3127       virtuellen Hosts.</li>
3128
3129       <li>Das Zeichen <code>*</code>, welches nur in Kombination mit
3130       <code>NameVirtualHost *</code> verwendet wird, um allen IP-Adressen
3131       zu entsprechen.</li>
3132
3133       <li>Die Zeichenkette <code>_default_</code>, die nur mit IP-basierten
3134       virtuellen Hosts verwendet wird, um nicht zugewiesene IP-Adressen
3135       aufzufangen.</li>
3136     </ul>
3137
3138     <example><title>Beispiel</title>
3139       &lt;VirtualHost 10.1.2.3&gt;<br />
3140       <indent>
3141         ServerAdmin webmaster@host.foo.com<br />
3142         DocumentRoot /www/docs/host.foo.com<br />
3143         ServerName host.foo.com<br />
3144         ErrorLog logs/host.foo.com-error_log<br />
3145         TransferLog logs/host.foo.com-access_log<br />
3146       </indent>
3147       &lt;/VirtualHost&gt;
3148     </example>
3149
3150     <p>IPv6-Adressen m&uuml;ssen in eckigen Klammern angegeben werden, da die
3151     optionale Portnummer sonst nicht erkannt werden kann. Hier ein
3152     IPv6-Beispiel:</p>
3153
3154     <example>
3155       &lt;VirtualHost [fe80::a00:20ff:fea7:ccea]&gt;<br />
3156       <indent>
3157         ServerAdmin webmaster@host.example.com<br />
3158         DocumentRoot /www/docs/host.example.com<br />
3159         ServerName host.example.com<br />
3160         ErrorLog logs/host.example.com-error_log<br />
3161         TransferLog logs/host.example.com-access_log<br />
3162       </indent>
3163       &lt;/VirtualHost&gt;
3164     </example>
3165
3166     <p>Jeder virtuelle Host muss einer anderen IP-Adresse, einem anderen Port
3167     oder einem anderen Hostnamen f&uuml;r den Server entsprechen. Im ersten
3168     Fall muss die Servermaschine so eingerichtet sein, dass sie IP-Pakete
3169     f&uuml;r mehrere Adressen akzeptiert. (Wenn der Rechner nicht mehrere
3170     Netzwerkkarten besitzt, kann dies mit dem Befehl <code>ifconfig
3171     alias</code> durchgef&uuml;hrt werden -- sofern Ihr Betriebssystem das
3172     unterst&uuml;tzt).</p>
3173
3174     <note><title>Anmerkung</title>
3175       <p>Die Verwendung von <directive type="section">VirtualHost</directive>
3176       beeinflusst <strong>nicht</strong>, an welchen Adressen der Apache
3177       lauscht. Sie m&uuml;ssen mit <directive
3178       module="mpm_common">Listen</directive> sicherstellen, dass der Apache
3179       an der richtigen Adresse lauscht.</p>
3180     </note>
3181
3182     <p>Bei der Verwendung IP-basierter virtuellen Hosts kann der spezielle
3183     Name <code>_default_</code> benutzt werden. In diesem Fall weist
3184     der Apache jede IP-Adresse diesem virtuellen Host zu, die nicht explizit in
3185     einem anderen virtuellen Host angegeben ist. Falls kein virtueller Host
3186     <code>_default_</code> angegeben ist, wird die "Hauptserver"-Konfiguration,
3187     die aus allen Definitionen au&szlig;erhalb der Virtual-Host-Abschnitte
3188     besteht, f&uuml;r nicht passende IPs verwendet. (Beachten Sie jedoch,
3189     dass eine IP-Adressen die zu einer <directive
3190     module="core">NameVirtualHost</directive>-Anweisung passt, weder den
3191     "Hauptserver" noch den virtuellen Host <code>_default_</code> verwendet.
3192     Lesen Sie f&uuml;r weitere Details die Dokumentation zu <a
3193     href="../vhosts/name-based.html">namensbasierten virtuell Hosts</a>.)</p>
3194
3195     <p>Sie k&ouml;nnen einen speziellen <code>:Port</code> angeben,
3196     um den entsprechenden Port zu wechseln. Falls nicht angegeben, wird
3197     er auf den gleichen Port voreingestellt, wie die letzte
3198     <directive module="mpm_common">Listen</directive>-Anweisung des
3199     Hauptservers. Sie k&ouml;nnen auch <code>:*</code> angeben, um alle
3200     Ports dieser Adresse zu akzeptieren. (Dies wird zusammen mit
3201     <code>_default_</code> empfohlen.)</p>
3202
3203     <note type="warning"><title>Sicherheit</title>
3204       <p>Lesen Sie das Dokument <a
3205       href="../misc/security_tips.html">Sicherheitshinweise</a> f&uuml;r
3206       Details, warum Ihre Sicherheit gef&auml;hrdet sein kann, wenn das
3207       Verzeichnis, in dem Protokolldateien gespeichert werden, f&uuml;r
3208       jemanden anderes als den Benutzer beschreibbar ist, der den Server
3209       gestartet hat.</p>
3210     </note>
3211 </usage>
3212 <seealso><a href="../vhosts/">Apache-Dokumentation zu virtuellen
3213   Hosts</a></seealso>
3214 <seealso><a href="../dns-caveats.html">Probleme bez&uuml;glich DNS und
3215     Apache</a></seealso>
3216 <seealso><a href="../bind.html">Bestimmen, welche Adressen und Ports
3217     der Apache verwendet</a></seealso>
3218 <seealso><a href="../sections.html">Wie die Abschnitte &lt;Directory&gt;,
3219     &lt;Location&gt; und &lt;Files&gt; arbeiten</a> f&uuml;r eine
3220     Erl&auml;uterung, wie diese verschiedenen Abschnitte miteinander
3221     kombiniert werden, wenn eine Anfrage empfangen wird</seealso>
3222 </directivesynopsis>
3223
3224 </modulesynopsis>