1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.de.xsl"?>
<!-- English revision: 1.2.2.5 -->
<manualpage metafile="invoking.xml.meta">
<title>Apache starten</title>
<summary>
<p>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 <a
href="platform/windows.html#winsvc">Apache als Dienst betreiben</a>
und <a href="platform/windows.html#wincons"
>Apache als Konsolenanwendung betreiben</a>.</p>
<p>Unter Unix wird das <a
href="programs/httpd.html">httpd</a>-Programm als Daemon ausgeführt,
der im Hintergrund fortlaufend aktiv ist, um Anfragen zu bearbeiten.
Dieses Dokument beschreibt, wie <code>httpd</code> aufgerufen wird.</p>
</summary>
<seealso><a href="stopping.html">Beenden und Neustarten</a></seealso>
<seealso><a href="programs/httpd.html">httpd</a></seealso>
<seealso><a href="programs/apachectl.html">apachectl</a></seealso>
<section id="startup"><title>Wie der Apache startet</title>
<p>Wenn die in der Konfigurationsdatei angegebene <directive
module="mpm_common">Listen</directive>-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 <em>Kind</em>-Prozesse, welche die Arbeit erledigen:
das Lauschen auf und Beantworten von Anfragen von Clients. Der
Haupt-<code>httpd</code>-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
<a href="mpm.html">Multi-Processing-Modul</a> gesteuert.</p>
<p>Die Verwendung des Steuerskripts <a
href="programs/apachectl.html">apachectl</a> ist die empfohlene Methode,
das <code>httpd</code>-Programm zu starten. Dieses Skript setzt
verschiedene Umgebungsvariablen, die für die korrekte Funktion von
<code>httpd</code> unter einigen Betriebssystemen notwendig sind, und
startet dann das <code>httpd</code>-Programm. <code>apachectl</code>
reicht alle Kommandozeilenargumente durch, so dass alle
<code>httpd</code>-Optionen auch mit <code>apachectl</code>
verwendet werden können. Um den korrekten Ablageort des
<code>httpd</code>-Programms sowie einige Kommandozeilenargumente
anzugeben, die Sie <em>immer</em> verwenden möchten, können
Sie auch das Skript <code>apachectl</code> direkt editieren und die
Variable <code>HTTPD</code> am Anfang ändern.</p>
<p>Das Erste was <code>httpd</code> macht, wenn es startet, ist das
Suchen und Einlesen der <a
href="configuring.html">Konfigurationsdatei</a> <code>httpd.conf</code>.
Der Ablageort dieser Datei wird zur Kompilierungszeit festgelegt. Es ist
aber möglich, den Ablageort zur Laufzeit anzugeben, indem die
Kommandozeilenoption <code>-f</code> wie folgt verwendet wird:</p>
<example>/usr/local/apache2/bin/apachectl -f
/usr/local/apache/conf/httpd.conf</example>
<p>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 <directive
module="core">DocumentRoot</directive>-Verzeichnis anzusehen wie auch
die lokale Kopie der Dokumentation, die von dieser Seite aus verlinkt
ist.</p>
</section>
<section id="errors"><title>Fehler während des Hochfahrens</title>
<p>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 <directive
module="core">ErrorLog</directive>, bevor er sich selbst beendet.
Eine der häufigsten Fehlermeldungen ist "<code>Unable
to bind to Port ...</code>" <transnote>"Kann nicht an Port ...
binden"</transnote>. Diese Meldung wird üblicherweise verursacht:</p>
<ul>
<li>entweder durch den Versuch, den Server an einem privilegierten
Port zu starten, während man nicht als Benutzer root angemeldet
ist,</li>
<li>oder durch den Versuch, den Server zu starten, wenn bereits eine
andere Instanz des Apache oder ein anderer Webserver an den gleichen
Port gebunden ist.</li>
</ul>
<p>Für weitere Anleitungen zur Fehlerbehebung lesen Sie bitte die
Apache-<a href="faq/">FAQ</a>.</p>
</section>
<section id="boot"><title>Beim Bootvorgang starten</title>
<p>Wenn Sie möchten, dass Ihr Server direkt nach einem
System-Neustart weiterläuft, sollten Sie einen Aufruf von
<code>apachectl</code> zu den Startdateien Ihres Systems hinzufügen
(üblicherweise <code>rc.local</code> oder eine Datei in einem
<code>rc.N</code>-Verzeichnis). Dies startet den Apache als root.
Stellen Sie zuvor jedoch sicher, dass Ihr Server hinsichtlich
Sicherheit und Zugriffsbeschränkungen richtig konfiguriert ist.</p>
<p>Das <code>apachectl</code>-Skript ist dafür ausgelegt, wie ein
Standard-SysV-init-Skript zu arbeiten. Es akzeptiert die Argumente
<code>start</code>, <code>restart</code> und <code>stop</code>
und übersetzt sie in die entsprechenden Signale für
<code>httpd</code>. Daher können Sie oftmals
einfach <code>apachectl</code> in das entsprechende init-Verzeichnis
linken. Überprüfen Sie bitte auf jeden Fall die genauen
Anforderungen Ihres Systems.</p>
</section>
<section id="info"><title>Weitere Informationen</title>
<p>Weitere Informationen über Kommandozeilenoptionen von <a
href="programs/httpd.html">httpd</a> und <a
href="programs/apachectl.html">apachectl</a> sowie anderen
Hilfsprogrammen, die dem Server beigefügt sind, sind auf der
Seite <a href="programs/">Server und Hilfsprogramme</a>
verfügbar. Es existiert außerdem eine Dokumentation
aller in der Apache-Distribution enthaltenen <a
href="mod/">Module</a> und der von ihnen bereitgestellten
<a href="mod/directives.html">Direktiven</a>.</p>
</section>
</manualpage>
|