<-
Apache > HTTP-Server > Dokumentation > Version 2.4 > Module

Allgemeine Direktiven der Apache-MPMs

Verfügbare Sprachen:  de  |  en  |  fr  |  ja  |  tr 

Diese Übersetzung ist möglicherweise nicht mehr aktuell. Bitte prüfen Sie die englische Version auf die neuesten Änderungen.
Beschreibung:Eine Sammlung von Direktiven, die in mehr als einem Multi-Processing-Modul (MPM) implementiert sind.
Status:MPM
Support Apache!

Direktiven

Bugfix checklist

Siehe auch

top

CoreDumpDirectory-Direktive

Beschreibung:Verzeichnis, in das der Apache zu wechseln versucht, bevor er einen Hauptspeicherauszug erstellt
Syntax:CoreDumpDirectory Verzeichnis
Voreinstellung:Für die Voreinstellung siehe Beschreibung
Kontext:Serverkonfiguration
Status:MPM
Modul:beos, leader, mpm_winnt, perchild, prefork, threadpool, worker

Dies beeinflusst das Verzeichnis, in welches der Apache zu wechseln versucht, bevor er einen Hauptspeicherauszug (Anm.d.Ü.: einen so genannten Core-Dump) erstellt. Die Voreinstellung ist das ServerRoot-Verzeichnis. Da dieses jedoch nicht für den Benutzer beschreibbar sein soll, unter dem der Server läuft, werden normalerweise keine Hauptspeicherauszüge geschrieben. Wenn Sie zum Debuggen einen Hauptspeicherauszug haben möchten, können Sie ihn mit dieser Direktive an einem anderen Ort ablegen lassen.

Hauptspeicherauszüge unter Linux

Wenn Apache als root startet und zu einem anderen Benutzer wechselt, deaktiviert der Linux-Kernel Hauptspeicherauszüge auch dann, wenn der Prozess in dem Verzeichnis schreiben darf. Ab Linux 2.4 reaktiviert Apache (ab 2.0.46) Hauptspeicherauszüge wieder, jedoch nur dann, wenn Sie explizit CoreDumpDirectory konfigurieren.

top

EnableExceptionHook-Direktive

Beschreibung:Aktiviert einen Hook, der nach einem Absturz noch Ausnahmefehler behandeln lassen kann
Syntax:EnableExceptionHook On|Off
Voreinstellung:EnableExceptionHook Off
Kontext:Serverkonfiguration
Status:MPM
Modul:leader, perchild, prefork, threadpool, worker
Kompatibilität:Verfügbar seit Version 2.0.49

Diese Direktive ist aus Sicherheitsgründen nur verfügbar, wenn der Server mit der Option --enable-exception-hook konfiguriert wurde. Sie aktiviert einen Hook, der es externen Modulen erlaubt, sich dort einzuhängen und nach dem Absturz eines Kindprozesses noch Aktionen durchzuführen.

Es existieren bereits zwei Module, mod_whatkilledus und mod_backtrace, welche diesen Hook verwenden. Weitere Informationen hierzu finden Sie auf Jeff Trawicks EnableExceptionHook-Seite.

top

GracefulShutdownTimeout-Direktive

Beschreibung:Specify a timeout after which a gracefully shutdown server will exit.
Syntax:GracefulShutdownTimeout seconds
Voreinstellung:GracefulShutdownTimeout 0
Kontext:Serverkonfiguration
Status:MPM
Modul:event, worker, prefork
Kompatibilität:Available in version 2.2 and later

Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.

top

Listen-Direktive

Beschreibung:IP-Adressen und Ports, an denen der Server lauscht
Syntax:Listen [IP-Addresse:]Port
Kontext:Serverkonfiguration
Status:MPM
Modul:beos, leader, mpm_netware, mpm_winnt, mpmt_os2, perchild, prefork, threadpool, worker
Kompatibilität:Seit Apache 2.0 vorgeschrieben

Die Direktive Listen weist den Apache an, nur an den angegebenen IP-Adressen oder Ports zu lauschen. Standardmäßig antwortet er auf alle Anfragen an allen IP-Interfaces. Listen ist nun eine notwendige Anweisung. Wenn sie nicht in der Konfigurationsdatei enthalten ist, wird der Server-Start fehlschlagen. Dies ist eine Änderung gegenüber früheren Versionen des Apache.

Die Direktive Listen weist den Server an, ankommende Anfragen am angegebenen Port oder der Kombination aus Adresse und Port entgegenzunehmen. Wenn nur eine Portnummer angegeben ist, dann lauscht der Server am angegebenen Port an allen Interfaces. Wenn sowohl eine IP-Adresse als auch ein Port angegeben sind, dann lauscht der Server am angegeben Port und Interface.

Es können mehrere Listen-Anweisungen verwendet werden, um eine Reihe von Adressen und Port anzugeben, an denen gelauscht werden soll. Der Server antwortet auf Anfragen von jedem der aufgeführten Adressen und Ports.

Um beispielsweise den Server Verbindungen an den beiden Ports 80 und 8000 annehmen zu lassen, verwenden Sie:

Listen 80
Listen 8000

Um den Server Verbindungen an zwei angegebenen Interfaces und Ports annehmen zu lassen, verwenden Sie:

Listen 192.170.2.1:80
Listen 192.170.2.5:8000

IPv6-Adressen müssen wie in dem folgenden Beispiel in eckige Klammern eingeschlossen werden:

Listen [2001:db8::a00:20ff:fea7:ccea]:80

Fehlermöglichkeit

Mehrere Listen-Direktiven für gleiche IP-Adresse und Port führen zur Fehlermeldung Address already in use (Anm.d.Ü.: Adresse schon in Benutzung).

Siehe auch

top

ListenBackLog-Direktive

Beschreibung:Maximale Länge der Warteschlange schwebender Verbindungen
Syntax:ListenBacklog backlog
Voreinstellung:ListenBacklog 511
Kontext:Serverkonfiguration
Status:MPM
Modul:beos, leader, mpm_netware, mpm_winnt, mpmt_os2, perchild, prefork, threadpool, worker

Die maximale Länge der Warteschlange schwebender Verbindungen. Üblicherweise ist keine Feineinstellung notwendig oder sinnvoll, auf einigen System kann es jedoch gewünscht sein, diesen Wert bei TCP-SYN-Angriffen zu erhöhen. Beachten Sie auch die Beschreibung des backlog-Parameters der Systemfunktion listen(2).

Der Wert wird vom Betriebssystem oft auf eine niedrigere Einstellung begrenzt. Dies variiert von Betriebssystem zu Betriebssystem. Beachten Sie auch, dass viele Betriebssyteme nicht genau beachten, was für backlog angegeben ist, jedoch einen Wert basierend auf der Angabe (normalerweiseweise jedoch größer als diese) verwenden.

top

ListenCoresBucketsRatio-Direktive

Beschreibung:Ratio between the number of CPU cores (online) and the number of listeners' buckets
Syntax:ListenCoresBucketsRatio ratio
Voreinstellung:ListenCoresBucketsRatio 0 (disabled)
Kontext:Serverkonfiguration
Status:MPM
Modul:event, worker, prefork
Kompatibilität:Available in Apache HTTP Server 2.4.17, with a kernel supporting the socket option SO_REUSEPORT and distributing new connections evenly across listening processes' (or threads') sockets using it (eg. Linux 3.9 and later, but not the current implementations of SO_REUSEPORT in *BSDs.

Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.

top

MaxConnectionsPerChild-Direktive

Beschreibung:Limit on the number of connections that an individual child server will handle during its life
Syntax:MaxConnectionsPerChild number
Voreinstellung:MaxConnectionsPerChild 0
Kontext:Serverkonfiguration
Status:MPM
Modul:event, worker, prefork, mpm_winnt, mpm_netware, mpmt_os2
Kompatibilität:Available Apache HTTP Server 2.3.9 and later. The old name MaxRequestsPerChild is still supported.

Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.

top

MaxMemFree-Direktive

Beschreibung:Maximale Menge des Arbeitsspeichers, den die Haupt-Zuteilungsroutine verwalten darf, ohne free() aufzurufen
Syntax:MaxMemFree KBytes
Voreinstellung:MaxMemFree 0
Kontext:Serverkonfiguration
Status:MPM
Modul:beos, leader, mpm_netware, prefork, threadpool, worker, mpm_winnt

Die Direktive MaxMemFree gibt die maximale Menge freier Kilobytes an, welche die Haupt-Zuteilungsroutine verwalten darf, ohne free() aufzurufen. Wenn keine Angabe gemacht wird, oder Null angegeben ist, wird dieser Wert nicht eingeschränkt.

top

MaxRequestWorkers-Direktive

Beschreibung:Maximum number of connections that will be processed simultaneously
Syntax:MaxRequestWorkers number
Voreinstellung:See usage for details
Kontext:Serverkonfiguration
Status:MPM
Modul:event, worker, prefork

Die Dokumentation zu dieser Direktive wurde noch nicht übersetzt. Bitte schauen Sie in die englische Version.

top

MaxSpareThreads-Direktive

Beschreibung:Maximale Anzahl unbeschäftigter Threads
Syntax:MaxSpareThreads Anzahl
Voreinstellung:Für Details siehe Beschreibung
Kontext:Serverkonfiguration
Status:MPM
Modul:beos, leader, mpm_netware, mpmt_os2, perchild, threadpool, worker

Maximale Anzahl unbeschäftigter Threads. Die verschiedenen MPMs behandeln diese Anweisung unterschiedlich.

Die Voreinstellung für perchild ist MaxSpareThreads 10. Das MPM überwacht die Anzahl der unbeschäftigten Threads auf der Basis einzelner Kindprozesse. Wenn zu viele unbeschäftigte Threads in einem Kindprozess existieren, beendet der Server Threads innerhalb dieses Kindprozesses.

Die Voreinstellung für worker, leader und threadpool ist MaxSpareThreads 250. Diese MPMs behandeln Threads auf einer serverweiten Basis. Wenn zu viele unbeschäftigte Threads im Server existieren, dann werden solange Kindprozesse beendet, bis die Anzahl der unbeschäftigten Threads kleiner als der angegebene Wert ist.

Die Voreinstellung für mpm_netware ist MaxSpareThreads 100. Da dieses MPM nur einen einzigen Prozess ausführt, ist die Zählung überschüssiger Threads ebenfalls serverweit.

beos and mpmt_os2 arbeiten ähnlich wie mpm_netware. Die Voreinstellung für beos ist MaxSpareThreads 50. Die Voreinstellung für mpmt_os2 ist 10.

Restriktionen

Der Wertebereich von MaxSpareThreads ist eingeschränkt. Apache korrigiert den angegebenen Wert automatisch gemäß den folgenden Regeln:

Siehe auch

top

MinSpareThreads-Direktive

Beschreibung:Minimale Anzahl unbeschäftigter Threads, die zur Bedienung von Anfragespitzen zur Verfügung stehen
Syntax:MinSpareThreads Anzahl
Voreinstellung:Für Details siehe Beschreibung
Kontext:Serverkonfiguration
Status:MPM
Modul:beos, leader, mpm_netware, mpmt_os2, perchild, threadpool, worker

Minimale Anzahl unbeschäftigter Threads, um Anfragespitzen zu bedienen. Die verschiedenen MPMs behandeln die Anweisung unterschiedlich.

perchild verwendet die Voreinstellung MinSpareThreads 5 und überwacht die Anzahl der unbeschäftigten Threads auf der Basis einzelner Kindprozesse. Wenn in einem Kindprozess nicht genügend unbeschäftigte Threads vorhanden sind, erstellt der Server neue Threads innerhalb dieses Kindprozesses. Wenn Sie also NumServers auf 10 und MinSpareThreads auf einen Wert von 5 setzen, haben Sie mindestens 50 unbeschäftigte Threads auf Ihrem System.

worker, leader und threadpool verwenden eine Voreinstellung von MinSpareThreads 75 und behandeln unbeschäftigte Threads auf serverweiter Basis. Wenn nicht genügend unbeschäftigte Threads im Server vorhanden sind, dann werden solange Kindprozesse erzeugt, bis die Anzahl unbeschäftigter Threads größer als der angegebene Wert ist.

mpm_netware verwendet die Voreinstellung MinSpareThreads 10 und verfolgt dies serverweit, da es ein Einzelprozess-MPM ist.

beos und mpmt_os2 arbeiten ähnlich wie mpm_netware. Die Voreinstellung für beos ist MinSpareThreads 1. Die Voreinstellung für mpmt_os2 ist 5.

Siehe auch

top

PidFile-Direktive

Beschreibung:Datei, in welcher der Server die Prozess-ID des Daemons ablegt
Syntax:PidFile Dateiname
Voreinstellung:PidFile logs/httpd.pid
Kontext:Serverkonfiguration