| <?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:1935202 (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> |