blob: bf7ccaf56e5489274c26811cea664e6e1605737e [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="de" xml:lang="de"><head><!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>Kompilieren und Installieren - Apache HTTP Server</title>
<link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
<link href="./images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="./mod/">Module</a> | <a href="./mod/directives.html">Direktiven</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossar</a> | <a href="./sitemap.html">Seitenindex</a></p>
<p class="apache">Apache HTTP Server Version 2.1</p>
<img alt="" src="./images/feather.gif" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP-Server</a> &gt; <a href="http://httpd.apache.org/docs-project/">Dokumentation</a> &gt; <a href="./">Version 2.1</a></div><div id="page-content"><div id="preamble"><h1>Kompilieren und Installieren</h1>
<div class="toplang">
<p><span>Verfügbare Sprachen: </span><a href="./de/install.html" title="Deutsch">&nbsp;de&nbsp;</a> |
<a href="./en/install.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="./es/install.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
<a href="./fr/install.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/install.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="./ko/install.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
</div>
<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>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#overview">Überblick für die Ungeduldigen</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#requirements">Anforderungen</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#download">Download</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#extract">Auspacken</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#configure">Den Codebaum konfigurieren</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#compile">Erstellen</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#install">Installieren</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#customize">Anpassen</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#test">Testen</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#upgrading">Upgrade</a></li>
</ul><h3>Siehe auch</h3><ul class="seealso"><li><a href="programs/configure.html">Den Quellcode konfigurieren</a></li><li><a href="invoking.html">Apache starten</a></li><li><a href="stopping.html">Beenden und Neustarten</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="overview" id="overview">Überblick für die Ungeduldigen</a></h2>
<table>
<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>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="requirements" id="requirements">Anforderungen</a></h2>
<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 Pflegeprogramme wie <a href="programs/apxs.html">apxs</a>
oder <a href="programs/dbmmanage.html">dbmmanage</a> (die in Perl
geschrieben sind) wird der Perl 5 Interpreter benötigt (die
Versionen ab 5.003 sind ausreichend). Wenn kein derartiger Interpreter
vom '<code>configure</code>'-Skript gefunden werden kann, macht das
jedoch nichts. Selbstverständlich können Sie den Apache 2.0
auch so generieren und installieren. Lediglich diese Pflegeskripte
können dann nicht verwendet werden. Wenn Sie mehrere Perl
Interpreter installiert haben (vielleicht Perl 4 durch Ihren
Händler und Perl 5 durch Sie selbst), dann ist die Verwendung der
<code>--with-perl</code> Option (siehe unten) empfehlenswert, um
sicherzustellen, dass der richtige Interpreter von
<code>./configure</code> ausgewählt wird.</dd>
</dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="download" id="download">Download</a></h2>
<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>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="extract" id="extract">Auspacken</a></h2>
<p>Das Auspacken des Quellcodes aus dem Apache HTTPD Tarball besteht
aus einem simplen Dekomprimieren und danach "Ent-tarren":</p>
<div class="example"><p><code>
$ gzip -d httpd-2_1_<em>NN</em>.tar.gz<br />
$ tar xvf httpd-2_1_<em>NN</em>.tar
</code></p></div>
<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>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="configure" id="configure">Den Codebaum konfigurieren</a></h2>
<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
<code><a href="programs/configure.html">configure</a></code>
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 <code>configure</code> 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 <code>configure</code> 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
<code>configure</code>-Skript mit Extrainformationen zum Ablageort
Ihres Compilers, Ihrer Bibliotheken oder Header-Dateien zu versorgen. Das
tun Sie, indem Sie entweder Umgebungsvariablen oder Kommandozeilenoptionen
an <code>configure</code> übergeben. Für mehr Informationen
lesen Sie bitte die <a href="programs/configure.html">Hilfeseite zu
configure</a>.</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 <code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code> und
<code class="module"><a href="./mod/mod_speling.html">mod_speling</a></code> für späteres Laden durch den
DSO-Mechanismus:</p>
<div class="example"><p><code>
$ CC="pgcc" CFLAGS="-O2" \<br />
./configure --prefix=/sw/pkg/apache \<br />
--enable-rewrite=shared \<br />
--enable-speling=shared
</code></p></div>
<p>Wenn <code>configure</code> 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 Konfigurationsoptionen finden
Sie auf der <a href="programs/configure.html">Hilfeseite zu
configure</a>.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="compile" id="compile">Erstellen</a></h2>
<p>Nun können Sie die verschiedenen Teile, die das Apache-Paket
bilden, einfach durch Ausführen des folgenden Befehls erstellen:</p>
<div class="example"><p><code>$ make</code></p></div>
<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>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="install" id="install">Installieren</a></h2>
<p>Nun endlich installieren Sie das Package unter dem konfigurierten
Installations-<em>PREFIX</em> (siehe oben: Option <code>--prefix</code>
durch Aufrufen von:</p>
<div class="example"><p><code>$ make install</code></p></div>
<p>Wenn Sie upgraden, wird die Installation Ihre Konfigurationsdateien
oder Dokumente nicht überschrieben.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="customize" id="customize">Anpassen</a></h2>
<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>
<div class="example"><p><code>$ vi <em>PREFIX</em>/conf/httpd.conf</code></p></div>
<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-2.1/">http://httpd.apache.org/docs-2.1/</a>.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="test" id="test">Testen</a></h2>
<p>Sie können nun Ihren Apache HTTP Server <a href="invoking.html">starten</a>, indem Sie einfach</p>
<div class="example"><p><code>$ <em>PREFIX</em>/bin/apachectl start</code></p></div>
<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 <code class="directive"><a href="./mod/core.html#documentroot">DocumentRoot</a></code>
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>
<div class="example"><p><code>$ <em>PREFIX</em>/bin/apachectl stop</code></p></div>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="upgrading" id="upgrading">Upgrade</a></h2>
<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 <code>configure</code>-Optionen, der Laufzeitkonfiguration sowie der
Modul-API zu vermeiden. In den meisten Fällen sollten Sie in der
Lage sein, den gleichen <code>configure</code>-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>Wenn Sie den Quellcode von Ihrer letzten Installation aufgehoben haben,
ist ein Upgrade sogar noch einfacher. Die Datei <code>config.nice</code> im
Wurzelverzeichnis des alten Quelltextbaums enthält den genauen
<code>configure</code>-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>
<div class="example"><p><code>
$ ./config.nice<br />
$ make<br />
$ make install<br />
$ <var>PREFIX</var>/bin/apachectl stop<br />
$ <var>PREFIX</var>/bin/apachectl start<br />
</code></p></div>
<div class="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
<code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>-Direktive). So
können Sie auf eventuelle Inkompatibilitäten testen, bevor Sie
endgültig die neue Version verwenden.</div>
</div></div>
<div class="bottomlang">
<p><span>Verfügbare Sprachen: </span><a href="./de/install.html" title="Deutsch">&nbsp;de&nbsp;</a> |
<a href="./en/install.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="./es/install.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
<a href="./fr/install.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/install.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="./ko/install.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a></p>
</div><div id="footer">
<p class="apache">Copyright 1999-2004 The Apache Software Foundation.<br />Lizenziert unter der <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="./mod/">Module</a> | <a href="./mod/directives.html">Direktiven</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossar</a> | <a href="./sitemap.html">Seitenindex</a></p></div>
</body></html>