mirror of
https://github.com/apache/httpd.git
synced 2025-05-28 13:41:30 +03:00
`build convmap` git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@531943 13f79535-47bb-0310-9956-ffa450edef68
401 lines
18 KiB
XML
401 lines
18 KiB
XML
<?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: 239255:527129 (outdated) -->
|
|
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<manualpage metafile="install.xml.meta">
|
|
|
|
<title>Kompilieren und Installieren</title>
|
|
|
|
<summary>
|
|
<p>Dieses Dokument umfaßt nur die Kompilierung und Installation des
|
|
Apache auf Unix und Unix-ähnlichen Systemen. Für die
|
|
Kompilierung und Installation unter Windows lesen Sie bitte <a
|
|
href="platform/windows.html">Den Apache unter Microsoft Windows
|
|
betreiben</a>. Für andere Plattformen lesen Sie bitte die
|
|
Dokumentation <a href="platform/">Plattformen</a>.</p>
|
|
|
|
<p>Die Konfigurations- und Installationsumgebung des Apache 2.0 hat sich
|
|
seit dem Apache 1.3 komplett verändert. Der Apache 1.3 benutzt einen
|
|
speziellen Satz von Skripten, um eine einfache Installation zu
|
|
ermöglichen. Der Apache 2.0 dagegen verwendet nun
|
|
<code>libtool</code> und <code>autoconf</code>, um eine Umgebung zu
|
|
schaffen, die der vieler anderer Open Source Projekte ähnlich
|
|
sieht.</p>
|
|
|
|
<p>Wenn Sie von einer Unterversion auf die nächste aktualisieren (z.B.
|
|
von 2.0.50 auf 2.0.51), springen Sie bitte zum Abschnitt <a
|
|
href="#upgrading">Upgrade</a>.</p>
|
|
</summary>
|
|
|
|
<seealso><a href="programs/configure.html">Den Quellcode konfigurieren</a></seealso>
|
|
<seealso><a href="invoking.html">Apache starten</a></seealso>
|
|
<seealso><a href="stopping.html">Beenden und Neustarten</a></seealso>
|
|
|
|
<section id="overview"><title>Überblick für die Ungeduldigen</title>
|
|
|
|
<table>
|
|
<columnspec><column width=".13"/><column width=".80"/></columnspec>
|
|
<tr>
|
|
<td><a href="#download">Download</a></td>
|
|
|
|
<td><code>$ lynx http://httpd.apache.org/download.cgi</code>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#extract">Auspacken</a></td>
|
|
|
|
<td><code>$ gzip -d httpd-2_1_<em>NN</em>.tar.gz<br />
|
|
$ tar xvf httpd-2_1_<em>NN</em>.tar</code> </td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#configure">Konfigurieren</a></td>
|
|
|
|
<td><code>$ ./configure --prefix=<em>PREFIX</em></code>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#compile">Kompilieren</a></td>
|
|
|
|
<td><code>$ make</code> </td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#install">Installieren</a></td>
|
|
|
|
<td><code>$ make install</code> </td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#customize">Anpassen</a></td>
|
|
|
|
<td><code>$ vi <em>PREFIX</em>/conf/httpd.conf</code> </td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#test">Testen</a></td>
|
|
|
|
<td><code>$ <em>PREFIX</em>/bin/apachectl start</code>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p><em>NN</em> muss durch die Nummer der Unterversion ersetzt werden,
|
|
und <em>PREFIX</em> durch den Verzeichnispfad,
|
|
in dem der Server installiert werden soll. Wenn <em>PREFIX</em> nicht
|
|
angegeben ist, wird die Voreinstellung <code>/usr/local/apache2</code>
|
|
verwendet.</p>
|
|
|
|
<p>Beginnend mit den Anforderungen
|
|
für die Kompilierung und Installation des Apache HTTPD ist
|
|
weiter unten jeder Abschnitt des Kompilierungs- und
|
|
Installationsvorganges genauer beschrieben.</p>
|
|
</section>
|
|
|
|
<section id="requirements"><title>Anforderungen</title>
|
|
|
|
<p>Folgende Anforderungen gelten für die Erstellung des
|
|
Apache:</p>
|
|
|
|
<dl>
|
|
<dt>Plattenplatz</dt>
|
|
<dd>Stellen Sie sicher, dass Sie kurzzeitig wenigstens 50 MB freien
|
|
Festplattenplatz zur Verfügung haben. Nach der Installation
|
|
belegt der Apache ungefähr 10 MB Plattenplatz. Der
|
|
tatsächliche Platzbedarf variiert in Abhängigkeit von den
|
|
gewählten Konfigurationseinstellungen und
|
|
Modulen von Drittanbietern.</dd>
|
|
|
|
<dt>ANSI-C-Compiler und Generierungswerkzeuge</dt>
|
|
<dd>Stellen Sie sicher, dass Sie einen ANSI-C Compiler installiert
|
|
haben. Der <a href="http://www.gnu.org/software/gcc/gcc.html">GNU C
|
|
Compiler (GCC)</a> der <a href="http://www.gnu.org/">Free Software
|
|
Foundation (FSF)</a> ist empfehlenswert (Version 2.7.2 ist gut). Wenn
|
|
Sie den GCC nicht besitzen, stellen Sie zumindest sicher, dass der
|
|
Compiler Ihres Anbieters ANSI-kompatibel ist. Außerdem muss Ihr
|
|
<code>PATH</code> wesentliche Generierungswerkzeuge wie
|
|
<code>make</code> enthalten.</dd>
|
|
|
|
<dt>Zeitgenauigkeit bewahren</dt>
|
|
<dd>Elemente des HTTP-Protokolls werden in Form einer Tageszeit
|
|
ausgedrückt. Darum sollten Sie jetzt prüfen, ob Ihr System
|
|
die Fähigkeit zur Zeitsynchronisation besitzt, und diese
|
|
gegebenenfalls installieren. Üblicherweise werden hierfür
|
|
die Programme <code>ntpdate</code> oder <code>xntpd</code> verwendet,
|
|
die auf dem Network Time Protocol (NTP) basieren. Nähere
|
|
Informationen über NTP Software und öffentliche Zeitserver
|
|
finden Sie in der Usenet Newsgroup <a
|
|
href="news:comp.protocols.time.ntp">comp.protocols.time.ntp</a>
|
|
und auf der <a href="http://www.ntp.org">NTP
|
|
Homepage</a>.</dd>
|
|
|
|
<dt><a href="http://www.perl.org/">Perl 5</a>
|
|
[OPTIONAL]</dt>
|
|
<dd>Für einige Hilfsskripte wie <program>apxs</program>
|
|
oder <program>dbmmanage</program> (die in Perl
|
|
geschrieben sind) wird der Perl 5 Interpreter benötigt (die
|
|
Versionen ab 5.003 sind ausreichend). Wenn Sie mehrere Perl
|
|
Interpreter haben (beispielsweise eine systemweite Installation von
|
|
Perl 4 und Ihre eigene Perl 5-Installation), dann sollten Sie die
|
|
<code>--with-perl</code>-Option (siehe unten) verwenden, um
|
|
sicherzustellen, dass der richtige Interpreter von
|
|
<program>configure</program> ausgewählt wird.
|
|
Wenn kein Perl 5-Interpreter vom <program>configure</program>-Skript
|
|
gefunden werden kann, können Sie die betroffenen Hilfsskripte nicht
|
|
verwenden, sind jedoch selbstverständlich nach wie vor in der Lage,
|
|
den Apache 2.0 zu bauen und zu installieren.</dd>
|
|
</dl>
|
|
</section>
|
|
|
|
<section id="download"><title>Download</title>
|
|
|
|
<p>Der Apache kann von der <a
|
|
href="http://httpd.apache.org/download.cgi">Apache HTTP Server
|
|
Downloadseite</a> heruntergeladen werden, auf der verschiedene Spiegelserver
|
|
angegeben sind. Für die meisten Benutzer des Apache ist es auf
|
|
Unix-ähnlichen Systemen am Besten, die Quellcodeversion herunterzuladen
|
|
und zu kompilieren. Der Erstellungsprozess (weiter unten beschrieben) ist
|
|
einfach und erlaubt es Ihnen, den Server Ihren Bedürfnissen anzupassen.
|
|
Dazu kommt, dass Binärdistributionen gegenüber der aktuellen
|
|
Quellcodeversion oft veraltet sind. Wenn Sie tatsächlich ein
|
|
Binärpaket herunterladen, folgen Sie bitte den Anweisungen in der Datei
|
|
<code>INSTALL.bindist</code>, die der Distribution beiliegt.</p>
|
|
|
|
<p>Es ist wichtig, dass Sie nach dem Herunterladen überprüfen,
|
|
dass es sich um einer vollständige und unveränderte Version des
|
|
Apache HTTP Servers handelt. Das können Sie erreichen, indem Sie das
|
|
heruntergeladene Paket gegen die PGP-Signatur prüfen. Einzelheiten dazu
|
|
erfahren Sie auf der <a
|
|
href="http://httpd.apache.org/download.cgi#verify">Download-Seite</a>. Es
|
|
ist auch ein erweitertes Beispiel verfügbar, dass die <a
|
|
href="http://httpd.apache.org/dev/verification.html">Anwendung von PGP</a>
|
|
beschreibt.</p>
|
|
|
|
</section>
|
|
|
|
<section id="extract"><title>Auspacken</title>
|
|
|
|
<p>Das Auspacken des Quellcodes aus dem Apache HTTPD Tarball besteht
|
|
aus einem simplen Dekomprimieren und danach "Ent-tarren":</p>
|
|
|
|
<example>
|
|
$ gzip -d httpd-2_1_<em>NN</em>.tar.gz<br />
|
|
$ tar xvf httpd-2_1_<em>NN</em>.tar
|
|
</example>
|
|
|
|
<p>Dies erstellt unterhalb des aktuellen Verzeichnisses ein neues
|
|
Verzeichnis, das den Quellcode für die Distribution enthält.
|
|
Sie sollten mit <code>cd</code> in dieses Verzeichnis wechseln,
|
|
bevor Sie mit der Kompilierung des Servers weitermachen. </p>
|
|
|
|
</section>
|
|
|
|
<section id="configure"><title>Den Codebaum konfigurieren</title>
|
|
|
|
<p>Der nächste Schritt ist die Konfiguration des
|
|
Apache-Codebaumes für Ihre spezielle Plattform und Ihre
|
|
persönlichen Bedürfnisse. Dies wird mit dem Skript
|
|
<program>configure</program> durchgeführt, das im Wurzelverzeichnis
|
|
der Distribution enthalten ist. (Entwickler, welche die CVS Version
|
|
des Apache-Codebaumes herunterladen, müssen <code>autoconf</code>
|
|
und <code>libtool</code> installiert haben und müssen
|
|
<code>buildconf</code> ausführen, bevor sie mit den
|
|
nächsten Schritten fortfahren können. Dies wird bei
|
|
offiziellen Releases nicht notwendig sein.)</p>
|
|
|
|
<p>Um den Codebaum mit den Standardeinstellungen zu konfigurieren,
|
|
geben Sie einfach <code>./configure</code> ein. Zur Änderung
|
|
dieser Voreinstellungen akzeptiert <program>configure</program> eine
|
|
Reihe von Variablen und Kommandozeilenoptionen.</p>
|
|
|
|
<p>Die wichtigste Option ist <code>--prefix</code>, der Ablageort, an dem
|
|
der Apache später installiert wird, da er für diesen Ort
|
|
konfiguriert werden muss, um korrekt zu arbeiten. Eine feinere Einstellung
|
|
der Dateiablagen ist mit weiteren <a
|
|
href="programs/configure.html#installationdirectories">configure-Optionen</a>
|
|
möglich.</p>
|
|
|
|
<p>Weiterhin können Sie zu diesem Zeitpunkt festlegen, welche <a
|
|
href="programs/configure.html#optionalfeatures">Funktionalität</a> Sie
|
|
in den Apache aufnehmen möchten, indem Sie <a href="mod/">Module</a>
|
|
aktivieren oder deaktivieren. Der Apache bindet standardmäßig
|
|
einen Satz von <a href="mod/module-dict.html#Status">Basismodulen</a> ein.
|
|
Andere Module werden mit Hilfe der Option
|
|
<code>--enable-<var>module</var></code> aktiviert, wobei <var>module</var>
|
|
den Namen des Moduls ohne das Präfix <code>mod_</code> darstellt.
|
|
Ausserdem sind alle Unterstriche durch Bindestriche zu ersetzen. Sie
|
|
können sich auch entscheiden, Module als "<a href="dso.html">Shared
|
|
Objects (DSOs)</a>" zu kompilieren, welche zur Laufzeit ge- und entladen
|
|
werden können. Dazu verwenden Sie die Option
|
|
<code>--enable-<var>module</var>=shared</code>. Entsprechend können Sie
|
|
Basismodule mit der Option <code>--disable-<var>module</var></code>
|
|
deaktivieren. Lassen Sie Vorsicht walten. wenn Sie diese Optionen verwenden,
|
|
da <program>configure</program> Sie nicht warnen kann, wenn die von Ihnen
|
|
angegebenen Module nicht existieren; die Option wird dann einfach
|
|
ignoriert.</p>
|
|
|
|
<p>Zusätzlich ist es zuweilen notwendig, das
|
|
<program>configure</program>-Skript mit Extrainformationen zum Ablageort
|
|
Ihres Compilers, Ihrer Bibliotheken oder Header-Dateien zu versorgen. Das
|
|
tun Sie, indem Sie entweder Umgebungsvariablen oder Kommandozeilenoptionen
|
|
an <program>configure</program> übergeben. Für mehr Informationen
|
|
lesen Sie bitte die Hilfeseite zu <program>configure</program>.</p>
|
|
|
|
<p>Um einen kurzen Eindruck zu gewinnen, welche Möglichkeiten Sie
|
|
haben, folgt hier ein typisches Beispiel, das den Apache mit einem
|
|
speziellen Compiler und Compilerflags für das
|
|
Installationsverzeichnis <code>/sk/pkg/apache</code> kompiliert, sowie
|
|
die beiden zusätzlichen Module <module>mod_rewrite</module> und
|
|
<module>mod_speling</module> für späteres Laden durch den
|
|
DSO-Mechanismus:</p>
|
|
|
|
<example>
|
|
$ CC="pgcc" CFLAGS="-O2" \<br />
|
|
./configure --prefix=/sw/pkg/apache \<br />
|
|
--enable-rewrite=shared \<br />
|
|
--enable-speling=shared
|
|
</example>
|
|
|
|
<p>Wenn <program>configure</program> startet, benötigt es mehrere
|
|
Minuten, um die Verfügbarkeit von Features auf Ihrem System zu
|
|
prüfen und ein Makefile zu generieren, das später zur
|
|
Kompilierung des Servers verwendet wird.</p>
|
|
|
|
<p>Einzelheiten zu den vielen verschiedenen <program>configure
|
|
</program>-Optionen finden Sie auf der Hilfeseite zu
|
|
<program>configure</program>.</p>
|
|
|
|
</section>
|
|
|
|
<section id="compile"><title>Erstellen</title>
|
|
|
|
<p>Nun können Sie die verschiedenen Teile, die das Apache-Paket
|
|
bilden, einfach durch Ausführen des folgenden Befehls erstellen:</p>
|
|
|
|
<example>$ make</example>
|
|
|
|
<p>Seien Sie hierbei bitte geduldig, denn eine Basiskonfiguration
|
|
benötigt ungefähr 3 Minuten auf einem Pentium III/Linux 2.2.
|
|
System. Dies kann aber abhängig von Ihrer Hardware und der Anzahl
|
|
der Module, die Sie aktiviert haben, sehr stark variieren.</p>
|
|
</section>
|
|
|
|
<section id="install"><title>Installieren</title>
|
|
|
|
<p>Nun endlich installieren Sie das Package unter dem konfigurierten
|
|
Installations-<em>PREFIX</em> (siehe oben: Option <code>--prefix</code>
|
|
durch Aufrufen von:</p>
|
|
|
|
<example>$ make install</example>
|
|
|
|
<p>Wenn Sie upgraden, wird die Installation Ihre Konfigurationsdateien
|
|
oder Dokumente nicht überschrieben.</p>
|
|
</section>
|
|
|
|
<section id="customize"><title>Anpassen</title>
|
|
|
|
<p>Als nächstes können Sie Ihren Apache HTTP Server anpassen,
|
|
indem Sie die <a href="configuring.html">Konfigurationsdateien</a>
|
|
unterhalb von <code><em>PREFIX</em>/conf/</code> editieren.</p>
|
|
|
|
<example>$ vi <em>PREFIX</em>/conf/httpd.conf</example>
|
|
|
|
<p>Werfen Sie auch einen Blick in das Apache-Handbuch unter <a
|
|
href="./">docs/manual/</a>. Die aktuellste Version dieses Handbuchs
|
|
sowie eine komplette Referenz der verfügbaren <a
|
|
href="mod/directives.html">Konfigurationsanweisungen</a> finden
|
|
Sie unter <a href="http://httpd.apache.org/docs/&httpd.docs;/"
|
|
>http://httpd.apache.org/docs/&httpd.docs;/</a>.</p>
|
|
</section>
|
|
|
|
<section id="test"><title>Testen</title>
|
|
|
|
<p>Sie können nun Ihren Apache HTTP Server <a
|
|
href="invoking.html">starten</a>, indem Sie einfach</p>
|
|
|
|
<example>$ <em>PREFIX</em>/bin/apachectl start</example>
|
|
|
|
<p>ausführen.</p>
|
|
|
|
<p>Danach sollten Sie Ihr erstes Dokument unter dem URL
|
|
<code>http://localhost/</code> anfordern können. Die Webseite,
|
|
die Sie sehen, ist im <directive module="core">DocumentRoot</directive>
|
|
abgelegt, welches üblicherweise <code><em>PREFIX</em>/htdocs/</code>
|
|
ist. Den Server <a href="stopping.html">stoppen</a> Sie wieder durch
|
|
Ausführen von:</p>
|
|
|
|
<example>$ <em>PREFIX</em>/bin/apachectl stop</example>
|
|
</section>
|
|
|
|
<section id="upgrading"><title>Upgrade</title>
|
|
|
|
<p>Der erste Schritt beim Aktualisieren besteht darin, die
|
|
Versionsankündigung sowie die <code>CHANGES</code>-Datei in der
|
|
Quelltextdistribution zu lesen, um Änderungen zu finden, die Ihr
|
|
System möglicherweise betreffen. Wenn Sie einen größeren
|
|
Versionssprung durchführen (z.B. vom 1.3 auf 2.0 oder von 2.0 auf
|
|
2.2), wird es wahrscheinlich auch größere Unterschiede in der
|
|
Kompilier- und Laufzeitkonfiguration geben, die manuelle Nacharbeiten
|
|
erfordern. Außerdem müssen alle Module aktualisiert
|
|
werden, um den Änderungen der Modul-API gerecht zu werden.</p>
|
|
|
|
<p>Die Aktualisierung einer Unterversion auf eine andere (z.B. von 2.0.55
|
|
auf 2.0.57) ist einfacher. <code>make install</code> überschreibt
|
|
keine der bereits existierenden Dokumente, Log- und Konfigurationsdateien.
|
|
Ausserdem bemühen sich die Entwickler, inkompatible Änderungen
|
|
der <program>configure</program>-Optionen, der Laufzeitkonfiguration sowie
|
|
der Modul-API zu vermeiden. In den meisten Fällen sollten Sie in der
|
|
Lage sein, den gleichen <program>configure</program>-Befehl, die gleiche
|
|
Konfiguration und die gleichen Module wieder zu verwenden. (Das gilt erst
|
|
seit Version 2.0.41 -- frühere Versionen enthielten noch inkompatible
|
|
Änderungen).</p>
|
|
|
|
<p>Um auf eine neue Unterversion zu aktualisieren, suchen Sie zunächst
|
|
die Datei <code>config.nice</code> im <code>build</code>-Verzeichnis
|
|
Ihrer Serverinstallation oder im Wurzelverzeichnis des Quelltextbaums
|
|
der alten Installation. Die Datei enthält den genauen
|
|
<program>configure</program>-Befehl, der verwendet wurde, um den
|
|
Quellcode zu konfigurieren. Um jetzt von einer Version auf die
|
|
nächste zu aktualisieren, kopieren Sie einfach die
|
|
<code>config.nice</code> in das Verzeichnis der neuen Version,
|
|
passen sie bei Bedarf an, und führen Sie sie aus:</p>
|
|
|
|
<example>
|
|
$ ./config.nice<br />
|
|
$ make<br />
|
|
$ make install<br />
|
|
$ <var>PREFIX</var>/bin/apachectl stop<br />
|
|
$ <var>PREFIX</var>/bin/apachectl start<br />
|
|
</example>
|
|
|
|
<note type="warning">Sie sollten jede neue Version immer in Ihrer Umgebung
|
|
testen, bevor Sie sie produktiv schalten. Beispielsweise können Sie
|
|
die neue Version neben der alten installieren, indem Sie ein anderes
|
|
<code>--prefix</code> und einen anderen Port wählen (durch Anpassen der
|
|
<directive module="mpm_common">Listen</directive>-Direktive). So
|
|
können Sie auf eventuelle Inkompatibilitäten testen, bevor Sie
|
|
endgültig die neue Version verwenden.</note>
|
|
</section>
|
|
|
|
</manualpage>
|