]> granicus.if.org Git - apache/blob - docs/manual/mod/mpm_common.xml.de
adjust properties and revision references of the german
[apache] / docs / manual / mod / mpm_common.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: 103423 -->
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="mpm_common.xml.meta">
23
24 <name>mpm_common</name>
25 <description>Eine Sammlung von Direktiven, die in mehr als einem
26   Multi-Processing-Modul (MPM) implementiert sind.</description>
27 <status>MPM</status>
28
29 <directivesynopsis>
30 <name>AcceptMutex</name>
31 <description>Vom Apache verwendete Methode zur Serialisierung mehrerer
32   Kindprozesse, die Anfragen an Netzwerk-Sockets entgegennehmen.</description>
33 <syntax>AcceptMutex Default|<var>Methode</var></syntax>
34 <default>AcceptMutex Default</default>
35 <contextlist><context>server config</context></contextlist>
36 <modulelist><module>leader</module><module>perchild</module>
37 <module>prefork</module><module>threadpool</module><module>worker</module>
38 </modulelist>
39
40 <usage>
41     <p>Die Direktive <directive>AcceptMutex</directive> bestimmt die
42     Methode, die der Apache zur Serialisierung mehrerer Kindprozesse
43     verwendet, welche Anfragen an Netzwerk-Sockets entgegennehmen. Vor
44     Apache 2.0 war diese Methode nur zur Kompilierungszeit einstellbar.
45     Die optimale Methode ist sehr stark von der Architektur und
46     Plattform abh&auml;ngig. Lesen Sie bitte <a
47     href="../misc/perf-tuning.html">Perfomance-Hinweise</a> f&uuml;r
48     weitere Details.</p>
49
50     <p>Wenn die Direktive auf <code>Default</code> eingestellt ist, dann
51     wird die zur Kompilierungszeit gew&auml;hlte Voreinstellung verwendet.
52     Weitere m&ouml;gliche Methoden sind unten angegeben. Beachten Sie, dass
53     nicht alle Methoden auf allen Plattformen verf&uuml;gbar sind. Wird
54     eine Methode angegeben, die nicht verf&uuml;gbar ist, dann wird
55     eine Nachricht in das Fehlerprotokoll geschrieben, welche die
56     verf&uuml;gbaren Methoden auflistet.</p>
57
58     <dl>
59       <dt><code>flock</code></dt>
60       <dd>verwendet die Systemfunktion <code>flock(2)</code>, um die
61       durch die <directive module="mpm_common"
62       >LockFile</directive>-Direktive definierte Datei zu sperren.</dd>
63
64       <dt><code>fcntl</code></dt>
65       <dd>verwendet die Systemfunktion <code>fcntl(2)</code>, um die
66       durch die <directive module="mpm_common"
67       >LockFile</directive>-Direktive definierte Datei zu sperren.</dd>
68
69       <dt><code>posixsem</code></dt>
70       <dd>verwendet POSIX-kompatible Semaphore, um den Mutex zu
71       implementieren.</dd>
72
73       <dt><code>pthread</code></dt>
74       <dd>verwendet gem&auml;&szlig; der POSIX-Thread-Spezifikation
75       implementierte POSIX-Mutexe.</dd>
76
77       <dt><code>sysvsem</code></dt>
78       <dd>verwendet Semaphoren des SysV-Typs, um den Mutex zu
79       implementieren.</dd>
80     </dl>
81
82     <p>Um die bei der Kompilierung gew&auml;hlte Voreinstellung f&uuml;r
83     Ihr System herauszufinden, k&ouml;nnen Sie Ihr <directive module="core"
84     >LogLevel</directive> auf <code>debug</code> setzen. Dann wird der
85     voreingestellte <directive>AcceptMutex</directive> ins <directive
86     module="core">ErrorLog</directive> geschrieben.</p>
87
88     <note type="warning"><title>Warnung</title>
89       <p>Auf den meisten Systemen stoppt der Server mit der Beantwortung von
90         Anfragen, wenn die Option <code>pthread</code> ausgew&auml;hlt wurde und
91         ein Kindprozess unkontrolliert endet w&auml;hrend er den
92         <code>AcceptCntl</code>-Mutex h&auml;lt. In diesem Fall muss der Server
93         manuell neu gestartet werden, um wieder weiter zu arbeiten.</p>
94       <p>Eine Ausnahme stellt Solaris dar, da es einen Mechanismus anbietet, den
95         der Apache verwendet und der &uuml;blicherweise die Freigabe des Mutex
96         erlaubt, nachdem ein Kindprozess, der gerade einen Mutex h&auml;lt,
97         abgest&uuml;rzt ist.</p>
98       <p>Wenn Ihr System die Funktion
99         <code>pthread_mutexattr_setrobust_np()</code> bereitstellt, k&ouml;nnen
100         Sie wahrscheinlich die Option <code>pthread</code> problemlos
101         verwenden.</p>
102     </note>
103 </usage>
104 </directivesynopsis>
105
106 <directivesynopsis>
107 <name>CoreDumpDirectory</name>
108 <description>Verzeichnis, in das der Apache zu wechseln versucht, bevor er
109   einen Hauptspeicherauszug erstellt</description>
110 <syntax>CoreDumpDirectory <var>Verzeichnis</var></syntax>
111 <default>F&uuml;r die Voreinstellung siehe Beschreibung</default>
112 <contextlist><context>server config</context></contextlist>
113 <modulelist><module>beos</module><module>leader</module>
114 <module>mpm_winnt</module><module>perchild</module><module>prefork</module>
115 <module>threadpool</module><module>worker</module></modulelist>
116
117 <usage>
118     <p>Dies beeinflusst das Verzeichnis, in welches der Apache zu wechseln
119     versucht, bevor er einen Hauptspeicherauszug <transnote>einen
120     so genannten Core-Dump</transnote> erstellt. Die Voreinstellung ist das
121     <directive module="core">ServerRoot</directive>-Verzeichnis. Da dieses
122     jedoch nicht f&uuml;r den Benutzer beschreibbar sein soll, unter dem
123     der Server l&auml;uft, werden normalerweise keine
124     Hauptspeicherausz&uuml;ge geschrieben. Wenn Sie zum Debuggen
125     einen Hauptspeicherauszug haben m&ouml;chten, k&ouml;nnen Sie
126     ihn mit dieser Direktive an einem anderen Ort ablegen lassen.</p>
127
128     <note><title>Hauptspeicherausz&uuml;ge unter Linux</title>
129       <p>Wenn Apache als <code>root</code> startet und zu einem anderen Benutzer 
130       wechselt, <em>deaktiviert</em> der Linux-Kernel Hauptspeicherausz&uuml;ge
131       auch dann, wenn der Prozess in dem Verzeichnis schreiben darf. Ab Linux
132       2.4 reaktiviert Apache (ab 2.0.46) Hauptspeicherausz&uuml;ge wieder,
133       jedoch nur dann, wenn Sie explizit
134       <directive>CoreDumpDirectory</directive> konfigurieren.</p>
135     </note>
136 </usage>
137 </directivesynopsis>
138
139 <directivesynopsis>
140 <name>EnableExceptionHook</name>
141 <description>Aktiviert einen Hook, der nach einem Absturz noch
142 Ausnahmefehler behandeln lassen kann</description>
143 <syntax>EnableExceptionHook On|Off</syntax>
144 <default>EnableExceptionHook Off</default>
145 <contextlist><context>server config</context></contextlist>
146 <modulelist><module>leader</module><module>perchild</module>
147 <module>prefork</module><module>threadpool</module>
148 <module>worker</module></modulelist>
149 <compatibility>Verf&uuml;gbar seit Version 2.0.49</compatibility>
150
151 <usage>
152     <p>Diese Direktive ist aus Sicherheitsgr&uuml;nden nur verf&uuml;gbar,
153     wenn der Server mit der Option <code>--enable-exception-hook</code>
154     konfiguriert wurde. Sie aktiviert einen Hook, der es externen Modulen
155     erlaubt, sich dort einzuh&auml;ngen und nach dem Absturz eines
156     Kindprozesses noch Aktionen durchzuf&uuml;hren.</p>
157
158     <p>Es existieren bereits zwei Module, <code>mod_whatkilledus</code> und
159     <code>mod_backtrace</code>, welche diesen Hook verwenden. Weitere
160     Informationen hierzu finden Sie auf Jeff Trawicks <a
161     href="http://www.apache.org/~trawick/exception_hook.html"
162     >EnableExceptionHook-Seite</a>.</p>
163 </usage>
164 </directivesynopsis>
165
166 <directivesynopsis>
167 <name>Group</name>
168 <description>Benutzergruppe, unter welcher der Server Anfragen
169   beantwortet</description>
170 <syntax>Group <var>Unix-Gruppe</var></syntax>
171 <default>Group #-1</default>
172 <contextlist><context>server config</context></contextlist>
173 <modulelist><module>beos</module><module>leader</module>
174 <module>mpmt_os2</module><module>perchild</module><module>prefork</module>
175 <module>threadpool</module><module>worker</module></modulelist>
176 <compatibility>Seit Apache 2.0 nur in der globalen Server-Konfiguration
177   g&uuml;ltig</compatibility>
178
179 <usage>
180     <p>Die Direktive <directive>Group</directive> bestimmt die
181     Benutzergruppe, unter welcher der Server Anfragen beantwortet.
182     Um diese Direktive zu verwenden, muss der Server als <code>root</code> gestartet
183     werden. Wenn Sie den Server unter einem nicht-root-Benutzer starten,
184     wird er nicht zur angegebenen Gruppe wechseln k&ouml;nnen und statt
185     dessen weiter mit der Gruppe des urspr&uuml;nglichen Benutzers
186     laufen. <var>Unix-Gruppe</var> kann sein:</p>
187
188     <dl>
189       <dt>Ein Gruppenname</dt>
190       <dd>Verweist auf die durch den Namen angegebene Gruppe.</dd>
191
192       <dt><code>#</code> gefolgt von einer Gruppennummer.</dt>
193       <dd>Verweist auf die durch ihre Nummer angegebene Gruppe.</dd>
194     </dl>
195
196     <example><title>Beispiel</title>
197       Group www-group
198     </example>
199
200     <p>Es wird empfohlen, dass Sie eine neue Gruppe speziell zum Betrieb
201     des Servers erstellen. Einige Administratoren verwenden den Benutzer
202     <code>nobody</code>. Dies ist jedoch nicht immer m&ouml;glich
203     oder gew&uuml;nscht.</p>
204
205     <note type="warning"><title>Sicherheit</title>
206       <p>Setzen Sie <directive>Group</directive> (oder <directive
207       module="mpm_common">User</directive>) nicht auf <code>root</code>,
208       solange Sie nicht ganz genau wissen, was Sie tun und welche Gefahren
209       Sie eingehen.</p>
210     </note>
211
212     <p>Wichtiger Hinweis: Die Verwendung der Direktive innerhalb von
213     <directive module="core" type="section">VirtualHost</directive>
214     wird nicht l&auml;nger unterst&uuml;tzt. Benutzen Sie <directive
215     module="mod_suexec">SuexecUserGroup</directive> um Ihren Server
216     f&uuml;r <a href="mod_suexec.html">suexec</a> einzurichten.</p>
217
218     <note><title>Anmerkung</title>
219       <p>Obwohl die Direktive <directive>Group</directive> in den MPMs
220       <module>beos</module> und <module>mpmt_os2</module> existiert, ist
221       sie dort tats&auml;chlich eine Leeranweisung und exisitert nur
222       aus Kompatibilit&auml;tsgr&uuml;nden.</p>
223     </note>
224 </usage>
225 </directivesynopsis>
226
227 <directivesynopsis>
228 <name>PidFile</name>
229 <description>Datei, in welcher der Server die Prozess-ID des Daemons
230 ablegt</description>
231 <syntax>PidFile <var>Dateiname</var></syntax>
232 <default>PidFile logs/httpd.pid</default>
233 <contextlist><context>server config</context></contextlist>
234 <modulelist><module>beos</module><module>leader</module>
235 <module>mpm_winnt</module><module>mpmt_os2</module>
236 <module>perchild</module><module>prefork</module>
237 <module>threadpool</module><module>worker</module></modulelist>
238
239 <usage>
240     <p>Die Direktive <directive>PidFile</directive> bestimmt die Datei,
241     in welcher der Server die Prozess-ID des Daemons ablegt. Wenn der
242     Dateiname nicht absolut angegeben wird, wird er relativ zu
243     <directive module="core">ServerRoot</directive> interpretiert.</p>
244
245     <example><title>Beispiel</title>
246       PidFile /var/run/apache.pid
247     </example>
248
249     <p>Es ist oft hilfreich, dem Server ein Signal senden zu k&ouml;nnen,
250     damit er seine <directive module="core">ErrorLog</directive>s und
251     <directive module="mod_log_config">TransferLog</directive>s
252     schlie&szlig;t und dann neu &ouml;ffnet und seine
253     Konfigurationsdateien neu einliest. Dies kann durch Senden eines
254     SIGHUP-Signals (kill -1) an die Prozess-ID geschehen, die im
255     <directive>PidFile</directive> eingetragen ist.</p>
256
257     <p>Die <directive>PidFile</directive>-Datei unterliegt den
258     gleichen Warnungen &uuml;ber die Ablage von Protokolldateien
259     und <a href="../misc/security_tips.html#serverroot">Sicherheit</a>.</p>
260
261     <note><title>Anmerkung</title>
262       <p>Ab Apache 2 wird empfohlen, nur das Skript <a
263       href="../programs/apachectl.html">apachectl</a> zum (Neu-)Starten
264       und Stoppen des Servers zu verwenden.</p>
265     </note>
266 </usage>
267 </directivesynopsis>
268
269 <directivesynopsis>
270 <name>Listen</name>
271 <description>IP-Adressen und Ports, an denen der Server lauscht</description>
272 <syntax>Listen [<var>IP-Addresse</var>:]<var>Port</var></syntax>
273 <contextlist><context>server config</context></contextlist>
274 <modulelist><module>beos</module><module>leader</module>
275 <module>mpm_netware</module><module>mpm_winnt</module>
276 <module>mpmt_os2</module><module>perchild</module>
277 <module>prefork</module><module>threadpool</module><module>worker</module>
278 </modulelist>
279 <compatibility>Seit Apache 2.0 vorgeschrieben</compatibility>
280
281 <usage>
282     <p>Die Direktive <directive>Listen</directive> weist den Apache an,
283     nur an den angegebenen IP-Adressen oder Ports zu lauschen.
284     Standardm&auml;&szlig;ig antwortet er auf alle Anfragen an allen
285     IP-Interfaces. <directive>Listen</directive> ist nun eine notwendige
286     Anweisung. Wenn sie nicht in der Konfigurationsdatei enthalten ist,
287     wird der Server-Start fehlschlagen. Dies ist eine &Auml;nderung
288     gegen&uuml;ber fr&uuml;heren Versionen des Apache.</p>
289
290     <p>Die Direktive <directive>Listen</directive> weist den Server an,
291     ankommende Anfragen am angegebenen Port oder der
292     Kombination aus Adresse und Port entgegenzunehmen. Wenn nur eine Portnummer
293     angegeben ist, dann lauscht der Server am angegebenen Port an allen
294     Interfaces. Wenn sowohl eine IP-Adresse als auch ein Port angegeben
295     sind, dann lauscht der Server am angegeben Port und Interface.</p>
296
297     <p>Es k&ouml;nnen mehrere <directive>Listen</directive>-Anweisungen
298     verwendet werden, um eine Reihe von Adressen und Port anzugeben, an
299     denen gelauscht werden soll. Der Server antwortet auf Anfragen von
300     jedem der aufgef&uuml;hrten Adressen und Ports.</p>
301
302     <p>Um beispielsweise den Server Verbindungen an den beiden Ports 80 und
303     8000 annehmen zu lassen, verwenden Sie:</p>
304
305     <example>
306       Listen 80<br />
307       Listen 8000
308     </example>
309
310     <p>Um den Server Verbindungen an zwei angegebenen Interfaces und Ports
311     annehmen zu lassen, verwenden Sie:</p>
312
313     <example>
314       Listen 192.170.2.1:80<br />
315       Listen 192.170.2.5:8000
316     </example>
317
318     <p>IPv6-Adressen m&uuml;ssen wie in dem folgenden Beispiel in eckige
319     Klammern eingeschlossen werden:</p>
320
321     <example>
322       Listen [fe80::a00:20ff:fea7:ccea]:80
323     </example>
324 </usage>
325 <seealso><a href="../dns-caveats.html">DNS-Probleme</a></seealso>
326 <seealso><a href="../bind.html">Bestimmen, welche Adressen und Ports der
327 Apache verwendet</a></seealso>
328 </directivesynopsis>
329
330 <directivesynopsis>
331 <name>ListenBackLog</name>
332 <description>Maximale L&auml;nge der Warteschlange schwebender
333   Verbindungen</description>
334 <syntax>ListenBacklog <var>backlog</var></syntax>
335 <default>ListenBacklog 511</default>
336 <contextlist><context>server config</context></contextlist>
337 <modulelist><module>beos</module><module>leader</module>
338 <module>mpm_netware</module><module>mpm_winnt</module>
339 <module>mpmt_os2</module><module>perchild</module><module>prefork</module>
340 <module>threadpool</module><module>worker</module></modulelist>
341
342 <usage>
343     <p>Die maximale L&auml;nge der Warteschlange schwebender Verbindungen.
344     &Uuml;blicherweise ist keine Feineinstellung notwendig oder sinnvoll,
345     auf einigen System kann es jedoch gew&uuml;nscht sein, diesen Wert bei
346     TCP-SYN-Angriffen zu erh&ouml;hen. Beachten Sie auch die Beschreibung des
347     backlog-Parameters der Systemfunktion <code>listen(2)</code>.</p>
348
349     <p>Der Wert wird vom Betriebssystem oft auf eine niedrigere
350     Einstellung begrenzt. Dies variiert von Betriebssystem zu Betriebssystem.
351     Beachten Sie auch, dass viele Betriebssyteme nicht genau beachten,
352     was f&uuml;r backlog angegeben ist, jedoch einen Wert basierend auf der
353     Angabe (normalerweiseweise jedoch gr&ouml;&szlig;er als diese) verwenden.</p>
354 </usage>
355 </directivesynopsis>
356
357 <directivesynopsis>
358 <name>LockFile</name>
359 <description>Ablageort der Lock-Datei f&uuml;r die Serialisierung von
360 entgegengenommenen Anfragen</description>
361 <syntax>LockFile <var>Dateiname</var></syntax>
362 <default>LockFile logs/accept.lock</default>
363 <contextlist><context>server config</context></contextlist>
364 <modulelist><module>leader</module><module>perchild</module>
365 <module>prefork</module><module>threadpool</module><module>worker</module>
366 </modulelist>
367
368 <usage>
369     <p>Die Direktive <directive>LockFile</directive> legt den Pfad zur
370     Lock-Datei fest, die verwendet wird, wenn der Apache mit einer der
371     <directive module="mpm_common">AcceptMutex</directive>-Einstellungen
372     <code>fcntl</code> oder <code>flock</code> verwendet wird. Die Anweisung
373     sollte normalerweise bei der Voreinstellung belassen werden.
374     Der Hauptgrund, sie zu &auml;ndern, ist, wenn das
375     <code>logs</code>-Verzeichnis auf einem per NFS-eingebundenen Laufwerk
376     liegt, da <strong>die Lock-Datei auf einer lokalen Platte abgelegt sein
377     muss</strong>. Die PID <transnote>Prozess-ID</transnote> des
378     Hauptserverprozesses wird automatisch an den Dateinamen angeh&auml;ngt.</p>
379
380     <note type="warning"><title>Sicherheit</title>
381       <p>Es ist am besten, die Ablage in einem allgemein <transnote>f&uuml;r
382       jedermann</transnote> beschreibbaren
383       Verzeichnis wie <code>/var/tmp</code> <em>zu vermeiden</em>, da
384       ein Denial-of-Servide-Angriff gestartet werden k&ouml;nnte und der
385       Server am Start gehindert werden k&ouml;nnte, indem eine Lock-Datei
386       mit dem gleichen Namen erstellt wird, wie der Server sie zu erstellen
387       versuchen w&uuml;rde.</p>
388     </note>
389 </usage>
390 <seealso><directive module="mpm_common">AcceptMutex</directive></seealso>
391 </directivesynopsis>
392
393 <directivesynopsis>
394 <name>MaxClients</name>
395 <description>Maximale Anzahl der Kindprozesse, die zur Bedienung von Anfragen
396   gestartet wird</description>
397 <syntax>MaxClients <var>Anzahl</var></syntax>
398 <default>F&uuml;r Details siehe Beschreibung</default>
399 <contextlist><context>server config</context></contextlist>
400 <modulelist><module>beos</module><module>leader</module>
401 <module>prefork</module><module>threadpool</module><module>worker</module>
402 </modulelist>
403
404 <usage>
405     <p>Die Direktive <directive>MaxClients</directive> setzt die Grenze
406     f&uuml;r die Anzahl gleichzeitig bedienter Anfragen. Jeder
407     Verbindungsversuch oberhalb der <directive
408     >MaxClients</directive>-Begrenzung wird &uuml;blicherweise in eine
409     Warteschlange gestellt, bis zu einer Anzahl basierend auf der
410     <directive module="mpm_common">ListenBacklog</directive>-Anweisung.
411     Sobald ein Kindprozess am Ende einer anderen Anfrage freigegeben wird,
412     wird die Verbindung bedient.</p>
413
414     <p>F&uuml;r Server ohne Thread-Unterst&uuml;tzung (<em>z.B.</em>
415     <module>prefork</module>) wird <directive>MaxClients</directive> als
416     maximale Anzahl der Kindprozesse verstanden, die zur Bedienung von
417     Anfragen gestartet werden. Die Voreinstellung ist <code>256</code>. Um
418     diesen Wert zu erh&ouml;hen, muss auch <directive
419     module="mpm_common">ServerLimit</directive> angehoben werden.</p>
420
421     <p>Bei Servern mit Thread-Unterst&uuml;tzung und bei Hybrid-Servern
422     (<em>z.B.</em> <module>beos</module> oder <module>worker</module>)
423     begrenzt <directive>MaxClients</directive> die Gesamtzahl der Threads,
424     die f&uuml;r die Bedienung von Anfragen verf&uuml;gbar sind.
425     Die Voreinstellung f&uuml;r <module>beos</module> ist <code>50</code>.
426     Bei Hybrid-MPMs ist die Voreinstellung <code>16</code> (<directive
427     module="mpm_common">ServerLimit</directive>) multipliziert mit
428     dem Wert <code>25</code> (<directive module="mpm_common"
429     >ThreadsPerChild</directive>). Um <directive>MaxClients</directive>
430     auf einen Wert zu erh&ouml;hen, der mehr als 16 Prozesse erfordert,
431     m&uuml;ssen Sie daher auch <directive module="mpm_common"
432     >ServerLimit</directive> anheben.</p>
433 </usage>
434 </directivesynopsis>
435
436 <directivesynopsis>
437 <name>MaxMemFree</name>
438 <description>Maximale Menge des Arbeitsspeichers, den die
439   Haupt-Zuteilungsroutine verwalten darf, ohne <code>free()</code>
440   aufzurufen</description>
441 <syntax>MaxMemFree <var>KBytes</var></syntax>
442 <default>MaxMemFree 0</default>
443 <contextlist><context>server config</context></contextlist>
444 <modulelist><module>beos</module><module>leader</module>
445 <module>mpm_netware</module><module>prefork</module>
446 <module>threadpool</module><module>worker</module><module>mpm_winnt</module></modulelist>
447
448 <usage>
449     <p>Die Direktive <directive>MaxMemFree</directive> gibt die maximale
450     Menge freier Kilobytes an, welche die Haupt-Zuteilungsroutine verwalten
451     darf, ohne <code>free()</code> aufzurufen. Wenn keine Angabe gemacht wird,
452     oder Null angegeben ist, wird dieser Wert nicht eingeschr&auml;nkt.</p>
453 </usage>
454 </directivesynopsis>
455
456 <directivesynopsis>
457 <name>MaxRequestsPerChild</name>
458 <description>Obergrenze f&uuml;r die Anzahl von Anfragen, die ein einzelner
459   Kindprozess w&auml;hrend seines Lebens bearbeitet</description>
460 <syntax>MaxRequestsPerChild <var>number</var></syntax>
461 <default>MaxRequestsPerChild 10000</default>
462 <contextlist><context>server config</context></contextlist>
463 <modulelist><module>leader</module><module>mpm_netware</module>
464 <module>mpm_winnt</module><module>mpmt_os2</module>
465 <module>perchild</module><module>prefork</module>
466 <module>threadpool</module><module>worker</module></modulelist>
467
468 <usage>
469     <p>Die Direktive <directive>MaxRequestsPerChild</directive> legt die
470     Grenze f&uuml;r die Anzahl von Anfragen fest, die ein einzelner
471     Kinprozess w&auml;hrend seines Lebens bearbeitet. Nach
472     <directive>MaxRequestsPerChild</directive> Anfragen stirbt der
473     Kindprozess. Wenn <directive>MaxRequestsPerChild</directive>
474     <code>0</code> ist, endet der Prozess niemals.</p>
475
476     <note><title>Abweichende Voreinstellungen</title>
477       <p>Die Voreinstellung f&uuml;r <module>mpm_netware</module> und
478       <module>mpm_winnt</module> ist <code>0</code>.</p>
479     </note>
480
481     <p>Die Begrenzung von <directive>MaxRequestsPerChild</directive> auf einen
482     Wert ungleich Null hat zwei vorteilhafte Auswirkungen:</p>
483
484     <ul>
485       <li>sie begrenzt die Menge an Arbeitsspeicher, die ein Prozess
486       durch (versehentliche) Speicherlecks verbrauchen kann.</li>
487
488       <li>das Festlegen einer endlichen Lebensdauer von Prozessen hilft, die
489       Anzahl von Prozessen zu reduzieren, wenn die Serverlast
490       zur&uuml;ckgeht.</li>
491     </ul>
492
493     <note><title>Anmerkung</title>
494       <p>Bei <directive module="core">KeepAlive</directive>-Anfragen
495       wird nur die erste Anfrage f&uuml;r diese begrenzung gez&auml;hlt.
496       Eigentlich wird nur die Begrenzung f&uuml;r die Anzahl der
497       <em>Verbindungen</em> pro Kindprozess ge&auml;ndert.</p>
498     </note>
499 </usage>
500 </directivesynopsis>
501
502 <directivesynopsis>
503 <name>MaxSpareThreads</name>
504 <description>Maximale Anzahl unbesch&auml;ftigter Threads</description>
505 <syntax>MaxSpareThreads <var>Anzahl</var></syntax>
506 <default>F&uuml;r Details siehe Beschreibung</default>
507 <contextlist><context>server config</context></contextlist>
508 <modulelist><module>beos</module><module>leader</module>
509 <module>mpm_netware</module><module>mpmt_os2</module>
510 <module>perchild</module><module>threadpool</module><module>worker</module>
511 </modulelist>
512
513 <usage>
514     <p>Maximale Anzahl unbesch&auml;ftigter Threads. Die verschiedenen MPMs
515     behandeln diese Anweisung unterschiedlich.</p>
516
517     <p>Die Voreinstellung f&uuml;r <module>perchild</module> ist
518     <code>MaxSpareThreads 10</code>. Das MPM &uuml;berwacht die Anzahl der
519     unbesch&auml;ftigten Threads auf der Basis einzelner Kindprozesse. Wenn
520     zu viele unbesch&auml;ftigte Threads in einem Kindprozess existieren,
521     beendet der Server Threads innerhalb dieses Kindprozesses.</p>
522
523     <p>Die Voreinstellung f&uuml;r <module>worker</module>,
524     <module>leader</module> und <module>threadpool</module> ist
525     <code>MaxSpareThreads 250</code>. Diese MPMs behandeln Threads
526     auf einer serverweiten Basis. Wenn zu viele unbesch&auml;ftigte Threads
527     im Server existieren, dann werden solange Kindprozesse beendet, bis
528     die Anzahl der unbesch&auml;ftigten Threads kleiner als der
529     angegebene Wert ist.</p>
530
531     <p>Die Voreinstellung f&uuml;r <module>mpm_netware</module> ist
532     <code>MaxSpareThreads 100</code>. Da dieses MPM nur einen einzigen
533     Prozess ausf&uuml;hrt, ist die Z&auml;hlung &uuml;bersch&uuml;ssiger
534     Threads ebenfalls serverweit.</p>
535
536     <p><module>beos</module> and <module>mpmt_os2</module> arbeiten
537     &auml;hnlich wie <module>mpm_netware</module>. Die Voreinstellung
538     f&uuml;r <module>beos</module> ist <code>MaxSpareThreads 50</code>.
539     Die Voreinstellung f&uuml;r <module>mpmt_os2</module> ist
540     <code>10</code>.</p>
541
542     <note><title>Restriktionen</title>
543       <p>Der Wertebereich von <directive>MaxSpareThreads</directive>
544       ist eingeschr&auml;nkt. Apache korrigiert den angegebenen Wert
545       automatisch gem&auml;&szlig; den folgenden Regeln:</p>
546       <ul>
547         <li><module>perchild</module> verlangt, dass <directive
548         >MaxSpareThreads</directive> kleiner oder gleich <directive
549         module="mpm_common">ThreadLimit</directive> ist.</li>
550
551         <li><module>mpm_netware</module> verlangt einen Wert gr&ouml;&szlig;er
552         als <directive module="mpm_common">MinSpareThreads</directive>.</li>
553
554         <li>Bei <module>leader</module>, <module>threadpool</module> und
555         <module>worker</module> muss der Wert gr&ouml;&szlig;er oder gleich
556         der Summe aus <directive
557         module="mpm_common">MinSpareThreads</directive> und
558         <directive module="mpm_common">ThreadsPerChild</directive> sein.</li>
559       </ul>
560     </note>
561 </usage>
562 <seealso><directive module="mpm_common">MinSpareThreads</directive></seealso>
563 <seealso><directive module="mpm_common">StartServers</directive></seealso>
564 </directivesynopsis>
565
566 <directivesynopsis>
567 <name>MinSpareThreads</name>
568 <description>Minimale Anzahl unbesch&auml;ftigter Threads, die zur
569   Bedienung von Anfragespitzen zur Verf&uuml;gung stehen</description>
570 <syntax>MinSpareThreads <var>Anzahl</var></syntax>
571 <default>F&uuml;r Details siehe Beschreibung</default>
572 <contextlist><context>server config</context></contextlist>
573 <modulelist><module>beos</module><module>leader</module>
574 <module>mpm_netware</module><module>mpmt_os2</module>
575 <module>perchild</module><module>threadpool</module><module>worker</module>
576 </modulelist>
577
578 <usage>
579     <p>Minimale Anzahl unbesch&auml;ftigter Threads, um Anfragespitzen
580     zu bedienen. Die verschiedenen MPMs behandeln die Anweisung
581     unterschiedlich.</p>
582
583     <p><module>perchild</module> verwendet die Voreinstellung
584     <code>MinSpareThreads 5</code> und &uuml;berwacht die Anzahl der
585     unbesch&auml;ftigten Threads auf der Basis einzelner Kindprozesse. Wenn
586     in einem Kindprozess nicht gen&uuml;gend unbesch&auml;ftigte
587     Threads vorhanden sind, erstellt der Server neue Threads innerhalb
588     dieses Kindprozesses. Wenn Sie also <directive module="perchild"
589     >NumServers</directive> auf <code>10</code> und <directive
590     >MinSpareThreads</directive> auf einen Wert von <code>5</code> setzen,
591     haben Sie mindestens 50 unbesch&auml;ftigte Threads auf Ihrem
592     System.</p>
593
594     <p><module>worker</module>, <module>leader</module> und
595     <module>threadpool</module> verwenden eine Voreinstellung von
596     <code>MinSpareThreads 75</code> und behandeln unbesch&auml;ftigte
597     Threads auf serverweiter Basis. Wenn nicht gen&uuml;gend
598     unbesch&auml;ftigte Threads im Server vorhanden sind, dann
599     werden solange Kindprozesse erzeugt, bis die Anzahl unbesch&auml;ftigter
600     Threads gr&ouml;&szlig;er als der angegebene Wert ist.</p>
601
602     <p><module>mpm_netware</module> verwendet die Voreinstellung
603     <code>MinSpareThreads 10</code> und verfolgt dies serverweit, da
604     es ein Einzelprozess-MPM ist.</p>
605
606     <p><module>beos</module> und <module>mpmt_os2</module> arbeiten
607     &auml;hnlich wie <module>mpm_netware</module>. Die Voreinstellung
608     f&uuml;r <module>beos</module> ist <code>MinSpareThreads 1</code>.
609     Die Voreinstellung f&uuml;r <module>mpmt_os2</module> ist
610     <code>5</code>.</p>
611
612 </usage>
613 <seealso><directive module="mpm_common">MaxSpareThreads</directive></seealso>
614 <seealso><directive module="mpm_common">StartServers</directive></seealso>
615 </directivesynopsis>
616
617 <directivesynopsis>
618 <name>ScoreBoardFile</name>
619 <description>Ablageort der Datei, die zur Speicherung von Daten zur
620   Koordinierung der Kindprozesse verwendet wird</description>
621 <syntax>ScoreBoardFile <var>Dateipfad</var></syntax>
622 <default>ScoreBoardFile logs/apache_status</default>
623 <contextlist><context>server config</context></contextlist>
624 <modulelist><module>beos</module><module>leader</module>
625 <module>mpm_winnt</module><module>perchild</module><module>prefork</module>
626 <module>threadpool</module><module>worker</module></modulelist>
627
628 <usage>
629     <p>Apache verwendet ein Scoreboard zur Kommunikation zwischen
630     seinen Eltern- und Kindprozessen. Einige Architekturen erfordern
631     eine Datei zur Unterst&uuml;tzung der Kommunikation. Wenn die Datei
632     undefiniert bleibt, versucht der Apache zuerst, das Scoreboard im
633     Arbeitsspeicher  zu erstellen (Verwendung von anonymem Shared-Memory),
634     und versucht bei einem Fehlschlag anschlie&szlig;end die Datei auf
635     der Festplatte zu erstellen (Verwendung von Datei-basiertem
636     Shared-Memory). Die Angabe dieser Direktive veranla&szlig;t den
637     Apache stets, die Datei auf der Festplatte zu erstellen.</p>
638
639     <example><title>Beispiel</title>
640       ScoreBoardFile /var/run/apache_status
641     </example>
642
643     <p>Datei-basiertes Shared-Memory ist f&uuml;r Applikationen von
644     Drittanbietern hilfreich, die direkten Zugriff auf das Scoreboard
645     ben&ouml;tigen.</p>
646
647     <p>Wenn Sie eine <directive>ScoreBoardFile</directive>-Anweisung
648     verwenden, erreichen Sie eventuell eine h&ouml;here Geschwindigkeit, wenn
649     Sie die Datei auf einer RAM-Disk ablegen. Achten Sie darauf, die
650     gleichen Warnungen wie &uuml;ber die Ablage von Protokolldateien und
651     <a href="../misc/security_tips.html">Sicherheit</a> zu beherzigen.</p>
652 </usage>
653 <seealso><a href="../stopping.html">Apache beenden und neu
654   starten</a></seealso>
655 </directivesynopsis>
656
657 <directivesynopsis>
658 <name>SendBufferSize</name>
659 <description>Gr&ouml;&szlig;e des TCP-Puffers</description>
660 <syntax>SendBufferSize <var>Bytes</var></syntax>
661 <default>SendBufferSize 0</default>
662 <contextlist><context>server config</context></contextlist>
663 <modulelist><module>beos</module><module>leader</module>
664 <module>mpm_netware</module><module>mpm_winnt</module>
665 <module>mpmt_os2</module><module>perchild</module><module>prefork</module>
666 <module>threadpool</module><module>worker</module></modulelist>
667
668 <usage>
669     <p>Der Server setzt die Gr&ouml;&szlig;e des TCP-Puffers auf die
670     angegebene Anzahl Bytes. Dies ist sehr hilfreich, um Voreinstellungen
671     alter Standardbetriebssysteme f&uuml;r Hochgeschwindigkeitsverbindungen
672     mit hoher Latenzzeit anzuheben (<em>d.h.</em> 100ms oder so, wie bei
673     Interkontinentalverbindungen).</p>
674
675     <p>Wird der Wert auf <code>0</code> gesetzt, dann verwendet der Server
676     die Voreinstellung des Betriebssystems.</p>
677 </usage>
678 </directivesynopsis>
679
680 <directivesynopsis>
681 <name>ServerLimit</name>
682 <description>Obergrenze f&uuml;r die konfigurierbare Anzahl von
683   Prozessen</description>
684 <syntax>ServerLimit <var>Anzahl</var></syntax>
685 <default>F&uuml;r Details siehe Beschreibung</default>
686 <contextlist><context>server config</context></contextlist>
687 <modulelist><module>leader</module><module>perchild</module>
688 <module>prefork</module><module>threadpool</module><module>worker</module>
689 </modulelist>
690
691 <usage>
692     <p>Bei dem MPM <module>prefork</module> bestimmt die Direktive
693     den w&auml;hrend der Lebensdauer des Apache-Prozesses maximal
694     einstellbaren Wert f&uuml;r <directive
695     module="mpm_common">MaxClients</directive>. Beim MPM
696     <module>worker</module> bestimmt die Direktive in Verbindung mit
697     <directive module="mpm_common">ThreadLimit</directive> den Maximalwert
698     f&uuml;r <directive module="mpm_common">MaxClients</directive>
699     f&uuml;r die Lebensdauer des Apache-Prozesses. Jeder Versuch, diese
700     Anweisung w&auml;hrend eines Neustarts zu &auml;ndern, wird ignoriert.
701     <directive module="mpm_common">MaxClients</directive> kann jedoch
702     w&auml;hrend eines Neustarts ge&auml;ndert werden.</p>
703
704     <p>Lassen Sie besondere Vorsicht bei der Verwendung dieser Direktive
705     walten. Wenn <directive>ServerLimit</directive> auf einen Wert deutlich
706     h&ouml;her als notwendig gesetzt wird, wird zus&auml;tzliches,
707     unbenutztes Shared-Memory belegt. Wenn sowohl
708     <directive>ServerLimit</directive> als auch <directive
709     module="mpm_common">MaxClients</directive> auf Werte gesetzt werden, die
710     gr&ouml;&szlig;er sind, als das System sie handhaben kann, dann kann
711     der Apache m&ouml;glicherweise nicht starten, oder das System kann
712     instabil werden.</p>
713
714     <p>Verwenden Sie die Direktive bei dem MPM <module>prefork</module>
715     nur, wenn Sie <directive module="mpm_common">MaxClients</directive>
716     auf mehr als 256 (Voreinstellung) setzen m&uuml;ssen. Setzen Sie den
717     Wert nicht h&ouml;her als den Wert, den Sie f&uuml;r <directive
718     module="mpm_common">MaxClients</directive> angeben m&ouml;chten.</p>
719
720     <p>Verwenden Sie die Direktive bei <module>worker</module>,
721     <module>leader</module> und <module>threadpool</module> nur, wenn Ihre
722     <directive module="mpm_common">MaxClients</directive>- und
723     <directive module="mpm_common">ThreadsPerChild</directive>-Einstellungen
724     mehr als 16 Serverprozesse (Voreinstellung) erfordern. Setzen Sie den
725     Wert dieser Direktive nicht h&ouml;her, als die Anzahl der Serverprozesse,
726     die daf&uuml;r erforderlich ist, was Sie bei <directive
727     module="mpm_common">MaxClients</directive> und
728     <directive module="mpm_common">ThreadsPerChild</directive> angeben
729     m&ouml;chten.</p>
730
731     <p>Verwenden Sie die Direktive beim MPM <module>perchild</module> nur,
732     wenn Sie <directive module="perchild">NumServers</directive> auf einen
733     Wert gr&ouml;&szlig;er als 8 (Voreinstellung) setzen m&uuml;ssen.</p>
734
735     <note><title>Anmerkung</title>
736       <p>Eine feste Begrenzung von <code>ServerLimit 20000</code> ist in den
737       Server einkompiliert (bei dem MPM <module>prefork</module> 200000).
738       Dies soll unangenehme Effekte durch Tippfehler verhindern.</p>
739     </note>
740 </usage>
741 <seealso><a href="../stopping.html">Apache beenden und neu
742   starten</a></seealso>
743 </directivesynopsis>
744
745 <directivesynopsis>
746 <name>StartServers</name>
747 <description>Anzahl der Kindprozesse des Servers, die beim Start erstellt
748   werden</description>
749 <syntax>StartServers <var>Anzahl</var></syntax>
750 <default>F&uuml;r Details siehe Beschreibung</default>
751 <contextlist><context>server config</context></contextlist>
752 <modulelist><module>leader</module><module>mpmt_os2</module>
753 <module>prefork</module><module>threadpool</module><module>worker</module>
754 </modulelist>
755
756 <usage>
757     <p>Die Direktive <directive>StartServers</directive> bestimmt
758     die Anzahl der Kindprozesse des Servers, die beim Start erstellt
759     werden. Da die Anzahl der Prozesse abh&auml;ngig von der Last
760     dynamisch kontrolliert wird, besteht normalerweise wenig
761     Grund f&uuml;r eine &Auml;nderung dieses Parameters.</p>
762
763     <p>Die Voreinstellung unterscheidet sich von MPM zu MPM. Bei
764     <module>leader</module>, <module>threadpool</module> und
765     <module>worker</module> ist die Voreinstellung
766     <code>StartServers 3</code>. Die Voreinstellung bei
767     <module>prefork</module> ist <code>5</code> und bei
768     <module>mpmt_os2</module> <code>2</code>.</p>
769 </usage>
770 </directivesynopsis>
771
772 <directivesynopsis>
773 <name>StartThreads</name>
774 <description>Anzahl der Threads, die beim Start erstellt werden</description>
775 <syntax>StartThreads <var>Anzahl</var></syntax>
776 <default>F&uuml;r Details siehe Beschreibung</default>
777 <contextlist><context>server config</context></contextlist>
778 <modulelist><module>beos</module><module>mpm_netware</module>
779 <module>perchild</module></modulelist>
780
781 <usage>
782     <p>Anzahl der Threads, die beim Start erstellt werden. Da die Anzahl
783     der Threads abh&auml;ngig von der Last dynamisch kontrolliert wird,
784     besteht normalerweise wenig Grund f&uuml;r eine &Auml;nderung
785     dieses Parameters.</p>
786
787     <p>Die Voreinstellung f&uuml;r <module>perchild</module> ist
788     <code>StartThreads 5</code>. Die Direktive setzt w&auml;hrend des
789     Starts die Anzahl der Threads pro Prozess.</p>
790
791     <p>Die Voreinstellung bei <module>mpm_netware</module> ist
792     <code>StartThreads 50</code>. Da hier lediglich ein einzelner Prozess
793     existiert, ist dies die Gesamtzahl der Threads, die beim Start
794     erstellt wird, um Anfragen zu bedienen.</p>
795
796     <p>Die Voreinstellung f&uuml;r <module>beos</module> ist <code>StartThreads
797     10</code>. Die Einstellung reflektiert ebenfalls die Gesamtzahl der Threads, die
798     beim Start erstellt werden, um Anfragen zu bedienen.</p>
799 </usage>
800 </directivesynopsis>
801
802 <directivesynopsis>
803 <name>ThreadLimit</name>
804 <description>Bestimmt die Obergrenze der konfigurierbaren Anzahl von Threads
805   pro Kindprozess</description>
806 <syntax>ThreadLimit <var>Anzahl</var></syntax>
807 <default>F&uuml;r Details siehe Beschreibung</default>
808 <contextlist><context>server config</context></contextlist>
809 <modulelist><module>leader</module><module>mpm_winnt</module>
810 <module>perchild</module><module>threadpool</module><module>worker</module>
811 </modulelist>
812 <compatibility>Verf&uuml;gbar f&uuml;r <module>mpm_winnt</module> ab
813   Apache 2.0.41</compatibility>
814
815 <usage>
816     <p>Die Direktive bestimmt den w&auml;hrend der Lebensdauer des
817     Apache-Prozesses maximal einstellbaren Wert f&uuml;r
818     <directive module="mpm_common">ThreadsPerChild</directive>. Jeder
819     Versuch, diese Direktive w&auml;hrend eines Neustarts zu &auml;ndern,
820     wird ignoriert. <directive module="mpm_common">ThreadsPerChild</directive>
821     kann jedoch w&auml;hrend eines Neustarts modifiziert werden bis zu dem
822     Wert dieser Anweisung.</p>
823
824     <p>Lassen Sie besondere Vorsicht bei der Verwendung dieser Direktive
825     walten. Wenn <directive>ThreadLimit</directive> auf einen Wert
826     deutlich h&ouml;her als <directive
827     module="mpm_common">ThreadsPerChild</directive> gesetzt wird, wird
828     zus&auml;tzliches, ungenutztes Shared-Memory belegt. Wenn sowohl
829     <directive>ThreadLimit</directive> als auch <directive
830     module="mpm_common">ThreadsPerChild</directive> auf Werte gesetzt werden,
831     die gr&ouml;&szlig;er sind, als das System sie handhaben kann, dann kann
832     der Apache m&ouml;glicherweise nicht starten oder das System kann
833     instabil werden. Setzen Sie den Wert dieser Direktive nicht h&ouml;her
834     als Ihre gr&ouml;&szlig;te erwartete Einstellung f&uuml;r
835     <directive module="mpm_common">ThreadsPerChild</directive>
836     w&auml;hrend der aktuellen Ausf&uuml;hrung des Apache.</p>
837
838     <p>Die Voreinstellung f&uuml;r <directive>ThreadLimit</directive> ist
839     <code>1920</code> wenn sie zusammen mit <module>mpm_winnt</module>
840     verwendet wird, und <code>64</code> bei der Verwendung mit anderen
841     MPMs.</p>
842
843     <note><title>Anmerkung</title>
844       <p>Eine feste Begrenzung von <code>ThreadLimit 20000</code>
845       (oder <code>ThreadLimit 15000</code> bei <module>mpm_winnt</module>)
846       ist in den Server einkompiliert. Dies soll unangenehme Effekte durch
847       Tippfehler verhindern.</p>
848     </note>
849 </usage>
850 </directivesynopsis>
851
852 <directivesynopsis>
853 <name>ThreadsPerChild</name>
854 <description>Anzahl der Threads, die mit jedem Kindprozess gestartet
855   werden</description>
856 <syntax>ThreadsPerChild <var>Anzahl</var></syntax>
857 <default>F&uuml;r Details siehe Beschreibung</default>
858 <contextlist><context>server config</context></contextlist>
859 <modulelist><module>leader</module><module>mpm_winnt</module>
860 <module>threadpool</module><module>worker</module></modulelist>
861
862 <usage>
863     <p>Die Direktive legt die Anzahl der Threads fest, die mit jedem
864     Kindprozess gestartet werden. Der Kindprozess erstellt diese Threads
865     beim Start und erstellt sp&auml;ter keine weiteren mehr. Wenn Sie ein
866     MPM wie <module>mpm_winnt</module> verwenden, wo nur ein
867     Kindprozess existiert, dann sollte diese Angabe hoch genug sein,
868     die gesamte Last des Servers zu bew&auml;ltigen. Wenn Sie ein MPM
869     wie <module>worker</module> verwenden, wo mehrere Kindprozesse
870     existieren, dann sollte die <em>Gesamt</em>zahl der Thread gro&szlig;
871     genug sein, die &uuml;bliche Last auf dem Server zu bew&auml;ltigen.</p>
872
873     <p>Die Voreinstellung f&uuml;r <directive>ThreadsPerChild</directive> ist
874     <code>64</code>, wenn <module>mpm_winnt</module> verwendet wird, und
875     <code>25</code> bei der Verwendung der anderen MPMs.</p>
876 </usage>
877 </directivesynopsis>
878
879 <directivesynopsis>
880 <name>ThreadStackSize</name>
881 <description>Die Gr&ouml;&szlig;e des Stacks in Bytes, der von Threads
882 verwendet wird, die Client-Verbindungen bearbeiten.</description>
883 <syntax>ThreadStackSize <var>size</var></syntax>
884 <default>65536 unter NetWare; variiert bei anderen Betriebssystemen.</default>
885 <contextlist><context>server config</context></contextlist>
886 <modulelist><module>leader</module><module>mpm_netware</module>
887 <module>mpm_winnt</module><module>perchild</module>
888 <module>threadpool</module><module>worker</module>
889 </modulelist>
890 <compatibility>Verf&uuml;gbar seit Version 2.1</compatibility>
891
892 <usage>
893     <p>Die Direktive <directive>ThreadStackSize</directive> legt die
894     Gr&ouml;&szlig;e des Stacks (f&uuml;r Autodaten) der Threads fest, die
895     Client-Verbindungen bearbeiten und Module aufrufen, welche bei der
896     Verarbeitung dieser Verbindungen helfen. In den meisten F&auml;llen ist die
897     Voreinstellung des Betriebssystems angemessen, doch unter bestimmten
898     Umst&auml;nden kann es sinnvoll sein, den Wert anzupassen:</p>
899
900     <ul>
901       <li>Auf Plattformen mit einer relativ kleinen Voreingestellung f&uuml;r
902       die Gr&ouml;&szlig;e des Thread-Stacks (z.B. HP-UX) kann der Apache bei
903       der Verwendung einiger Drittanbietermodule, die einen relativ hohen Bedarf
904       an Speicherplatz haben, abst&uuml;rzen. Ebendiese Module arbeiten
905       m&ouml;glicherweise problemlos auf anderen Plattformen, wo der
906       voreingestellte Thread-Stack gr&ouml;&szlig;er ist. Derartige
907       Abst&uuml;rze k&ouml;nnen Sie vermeiden, indem Sie
908       <directive>ThreadStackSize</directive> auf einen h&ouml;heren Wert als die
909       Betriebssystemvoreinstellung setzen.  Eine solche Anpassung ist nur
910       notwendig, wenn es vom Anbieter des Moduls so spezifiziert wurde oder die
911       Diagnose eines Apache-Absturzes ergeben hat, das die
912       Thread-Stackgr&ouml;&szlig;e zu klein war.</li>
913
914       <li>Auf Plattformen, wo die voreingestellte Thread-Stackgr&ouml;&szlig;e
915       f&uuml;r die Webserverkonfiguration deutlich gr&ouml;&szlig;er als
916       notwendig ist, kann eine gr&ouml;&szlig;ere Anzahl von Threads pro
917       Kindprozess erreicht werden, wenn <directive>ThreadStackSize</directive>
918       auf einen Wert kleiner als die Betriebssystemvoreinstellung gesetzt wird.
919       Da es einzelne Anfragen geben kann, die mehr Stack zur Verarbeitung
920       ben&ouml;tigen, sollte eine derartige Korrektur ausschlie&szlig;lich in
921       Testumgebungen zum Einsatz kommen, auf denen die gesamte
922       Webserververarbeitung ausprobiert werden kann. Eine &Auml;nderung der
923       Webserverkonfiguration kann den aktuellen Wert der
924       <directive>ThreadStackSize</directive> ung&uuml;ltig machen.</li>
925     </ul>
926 </usage>
927 </directivesynopsis>
928
929 <directivesynopsis>
930 <name>User</name>
931 <description>Die Benutzerkennung, unter welcher der Server Anfragen
932   beantwortet</description>
933 <syntax>User <var>Unix-User-ID</var></syntax>
934 <default>User #-1</default>
935 <contextlist><context>server config</context></contextlist>
936 <modulelist><module>leader</module><module>perchild</module>
937 <module>prefork</module><module>threadpool</module><module>worker</module>
938 </modulelist>
939 <compatibility>Seit Apache 2.0 nur in der globalen Server-Konfiguration
940 g&uuml;ltig</compatibility>
941
942 <usage>
943     <p>Die Direktive <directive>User</directive> legt die Benutzerkennung
944     fest, mit der der Server Anfragen beantwortet. Um diese Anweisung
945     zu verwenden, muss der Server als <code>root</code> gestartet werden.
946     Wenn Sie den Server unter einem nicht-root-Benutzer starten, kann
947     er nicht zu dem minder privilegierten Benutzer wechseln und wird statt
948     dessen weiter mit der urspr&uuml;nglichen Benutzerkennung laufen.
949     Wenn Sie den Server als <code>root</code> starten, dann ist es normal,
950     dass der Elternprozess als root weiterl&auml;uft.
951     <var>Unix-User-ID</var> kann sein:</p>
952
953     <dl>
954       <dt>Ein Benutzername</dt>
955       <dd>Verweist auf den durch Namen angegebenen Benutzer.</dd>
956
957       <dt># gefolgt von einer Benutzernummer.</dt>
958       <dd>Verweist auf einen durch eine Nummer angegebenen Benutzer.</dd>
959     </dl>
960
961     <p>Der Benutzer sollte keine Rechte besitzen, die dazu f&uuml;hren,
962     dass er in der Lage ist, auf Dateien zuzugreifen, die nicht daf&uuml;r
963     bestimmt sind, f&uuml;r die Au&szlig;enwelt sichtbar zu sein.
964     Gleicherma&szlig;en sollte der Benutzer nicht in der Lage sein,
965     Code auszuf&uuml;hren, der nicht f&uuml;r HTTP-Anfragen bestimmt ist.
966     Es wird empfohlen, einen neuen Benutzer und eine neue Gruppe speziell
967     zur Ausf&uuml;hrung des Servers zu erstellen. Einige Administratoren
968     verwenden den Benutzer <code>nobody</code>. Dies ist jedoch nicht
969     immer w&uuml;nschenswert, da der Benuter <code>nobody</code> andere
970     Rechte auf dem System besitzen kann.</p>
971
972     <note type="warning"><title>Sicherheit</title>
973       <p>Setzen Sie <directive>User</directive> (oder <directive
974       module="mpm_common">Group</directive>) nicht auf <code>root</code>,
975       solange Sie nicht genau wissen, was Sie tun, und welches die Gefahren
976       sind.</p>
977     </note>
978
979     <p>Beim MPM <module>perchild</module>, das daf&uuml;r gedacht ist,
980     virtuelle Hosts unter verschiedenen Benutzerkennungen auszuf&uuml;hren,
981     bestimmt die Direktive <directive>User</directive> die
982     Benutzerkennung f&uuml;r den Hauptserver und bildet den R&uuml;ckfallwert
983     f&uuml;r <directive type="section"
984     module="core">VirtualHost</directive>-Abschnitte ohne eine
985     <directive module="perchild">AssignUserID</directive>-Anweisung.</p>
986
987     <p>Wichtiger Hinweis: Die Verwendung dieser Direktive innerhalb von
988     <directive module="core" type="section">VirtualHost</directive> wird
989     nicht mehr unterst&uuml;tzt. Benutzen Sie <directive
990     module="mod_suexec">SuexecUserGroup</directive>, um Ihren Server
991     f&uuml;r <a href="../suexec.html">suexec</a> einzurichten.</p>
992
993     <note><title>Anmerkung</title>
994       <p>Obwohl die Direktive <directive>User</directive> in den MPMs
995       <module>beos</module> und <module>mpmt_os2</module> existiert, ist
996       sie dort tats&auml;chlich eine Leeranweisung und exisitert nur
997       aus Kompatibilit&auml;tsgr&uuml;nden.</p>
998     </note>
999 </usage>
1000 </directivesynopsis>
1001
1002 </modulesynopsis>