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