Apache HTTP Server Version 2.2
Unter Windows l�uft der Apache �blicherweise als Dienst (Windows NT, 2000 und XP) oder als Konsolenanwendung (Windows 9x und ME). F�r Einzelheiten lesen Sie bitte Apache als Dienst betreiben und Apache als Konsolenanwendung betreiben.
Unter Unix wird das httpd
-Programm als Daemon
ausgef�hrt, der im Hintergrund fortlaufend aktiv ist, um
Anfragen zu bearbeiten. Dieses Dokument beschreibt, wie
httpd
aufgerufen wird.
Wenn die in der Konfigurationsdatei angegebene Listen
-Anweisung auf die Voreinstellung
von 80 gesetzt ist (oder einen anderen Port unterhalb von 1024), dann
m�ssen Sie root-Berechtigung besitzen, um den Apache starten
zu k�nnen. Nur dann kann er sich an diesen privilegierten
Port binden. Sobald der Server gestartet ist und einige vorbereitende
Aktionen wie das �ffnen seiner Log-Dateien ausgef�hrt hat,
startet er mehrere Kind-Prozesse, welche die Arbeit erledigen:
das Lauschen auf und Beantworten von Anfragen von Clients. Der
Haupt-httpd
-Prozess l�uft unter dem Benutzer root
weiter, die Kind-Prozesse jedoch werden unter weniger privilegierten
Benutzerkennungen ausgef�hrt. Dies wird von dem ausgew�hlten
Multi-Processing-Modul gesteuert.
Die Verwendung des Steuerskripts apachectl
ist die
empfohlene Methode, das httpd
-Programm zu starten.
Dieses Skript setzt verschiedene Umgebungsvariablen, die f�r die
korrekte Funktion von httpd
unter einigen
Betriebssystemen notwendig sind, und startet dann das
httpd
-Programm. apachectl
reicht alle Kommandozeilenargumente durch, so dass alle
httpd
-Optionen auch mit apachectl
verwendet werden k�nnen. Um den korrekten Ablageort des
httpd
-Programms sowie einige Kommandozeilenargumente
anzugeben, die Sie immer verwenden m�chten, k�nnen
Sie auch das Skript apachectl
direkt editieren und die
Variable HTTPD
am Anfang �ndern.
Das Erste was httpd
macht, wenn es startet, ist das
Suchen und Einlesen der Konfigurationsdatei httpd.conf
.
Der Ablageort dieser Datei wird zur Kompilierungszeit festgelegt. Es ist
aber m�glich, den Ablageort zur Laufzeit anzugeben, indem die
Kommandozeilenoption -f
wie folgt verwendet wird:
/usr/local/apache2/bin/apachectl -f
/usr/local/apache2/conf/httpd.conf
Wenn w�hrend des Starts alles gutgeht, trennt sich der Server
vom Terminal ab und die Eingabeaufforderung erscheint gleich darauf
wieder. Dies zeigt an, dass der Server hochgefahren ist und l�uft.
Sie k�nnen nun Ihren Browser benutzen, um Verbindung zum Server
aufzunehmen und sich die Testseite im DocumentRoot
-Verzeichnis anzusehen wie auch
die lokale Kopie der Dokumentation, die von dieser Seite aus verlinkt
ist.
Wenn der Apache w�hrend des Hochfahrens einen schweren Fehler
feststellt, schreibt er entweder eine Nachricht, die das Problem
n�her schildert, auf die Konsole oder ins ErrorLog
, bevor er sich selbst beendet.
Eine der h�ufigsten Fehlermeldungen ist "Unable
to bind to Port ...
" (Anm.d.�.: "Kann nicht an Port ...
binden"). Diese Meldung wird �blicherweise verursacht:
F�r weitere Anleitungen zur Fehlerbehebung lesen Sie bitte die Apache-FAQ.
Wenn Sie m�chten, dass Ihr Server direkt nach einem
System-Neustart weiterl�uft, sollten Sie einen Aufruf von
apachectl
zu den Startdateien Ihres Systems
hinzuf�gen (�blicherweise rc.local
oder
eine Datei in einem rc.N
-Verzeichnis). Dies startet
den Apache als root. Stellen Sie zuvor jedoch sicher, dass Ihr
Server hinsichtlich Sicherheit und Zugriffsbeschr�nkungen
richtig konfiguriert ist.
Das apachectl
-Skript ist daf�r ausgelegt, wie
ein Standard-SysV-init-Skript zu arbeiten. Es akzeptiert die Argumente
start
, restart
und stop
und �bersetzt sie in die entsprechenden Signale f�r
httpd
. Daher k�nnen Sie oftmals
einfach apachectl
in das entsprechende init-Verzeichnis
linken. �berpr�fen Sie bitte auf jeden Fall die genauen
Anforderungen Ihres Systems.
Weitere Informationen �ber Kommandozeilenoptionen von httpd
und apachectl
sowie anderen
Hilfsprogrammen, die dem Server beigef�gt sind, sind auf der
Seite Server und Hilfsprogramme
verf�gbar. Es existiert au�erdem eine Dokumentation
aller in der Apache-Distribution enthaltenen Module und der von ihnen bereitgestellten
Direktiven.