<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.en.xsl"?>
-<!-- English Revision: 420990:1565321 (outdated) -->
+<!-- English Revision: 1565321 -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<manualpage metafile="bind.xml.meta">
- <title>Anbindung</title>
+ <title>An Adressen und Ports binden</title>
<summary>
- <p>Konfiguration der vom Apache verwendeten Adressen und Ports.</p>
+ <p>Konfiguration der vom Apache HTTP Server verwendeten Adressen und
+ Ports.</p>
</summary>
<seealso><a href="vhosts/">Virtuelle Hosts</a></seealso>
</directivelist>
</related>
- <p>Beim Start bindet sich der Apache an bestimmte Adressen und Ports
- der lokalen Maschine und wartet auf eingehende Anfragen.
- Standardmäßig lauscht er an allen Adressen des Systems.
- Es kann jeodch notwendig sein, ihm mit zuteilen, nur an bestimmten Ports
- zu lauschen oder nur an ausgewählten Adressen, bzw. einer
- Kombination aus beidem. Dies wird oft mit der Funktionalität
- virtueller Hosts kombiniert, die bestimmt, wie der Apache auf
- verschiedene IP-Adressen, Hostnamen und Ports reagiert.</p>
+ <p>Beim Start bindet sich der httpd an bestimmte Adressen und Ports
+ der lokalen Maschine und wartet auf eingehende Anfragen.
+ Standardmäßig lauscht er an allen Adressen des Systems.
+ Es kann jeodch notwendig sein, ihm mit zuteilen, nur an bestimmten
+ Ports zu lauschen oder nur an ausgewählten Adressen, bzw. einer
+ Kombination aus beidem. Dies wird oft mit der Funktionalität <a
+ href="vhosts/">virtueller Hosts</a> kombiniert, die bestimmt, wie
+ der <code>httpd</code> auf verschiedene IP-Adressen, Hostnamen und
+ Ports reagiert.</p>
<p>Die Direktive <directive module="mpm_common">Listen</directive>
- weist den Server an, eingehende Anfragen nur an bestimmten Ports oder
- Adress/Port-Kombinationen zu akzeptieren. Wenn bei der <directive
- module="mpm_common">Listen</directive>-Direktive nur eine Portnummer
- angegeben wird, dann lauscht der Server auf allen Netzwerkinterfaces an
- dem angegebenen Port. Ist auch eine IP-Adresse angegeben, dann lauscht der
- Server an der angegebenen Schnittstelle auf dem angegebenen Port. Es
- können mehrere <directive
- module="mpm_common">Listen</directive>-Anweisungen verwendet werden, um
- eine Reihe von Adressen und Ports anzugeben, an denen gelauscht werden
- soll. Der Server wird dann auf Anfragen an jeder der abgehörten
- Adressen und Ports antworten.</p>
+ weist den Server an, eingehende Anfragen nur an bestimmten Port(s)
+ oder Adress/Port-Kombinationen zu akzeptieren. Wenn bei der
+ <directive module="mpm_common">Listen</directive>-Direktive nur eine
+ Portnummer angegeben wird, dann lauscht der Server auf allen
+ Netzwerkinterfaces an dem angegebenen Port. Ist auch eine IP-Adresse
+ angegeben, dann lauscht der Server an der angegebenen Schnittstelle
+ auf dem angegebenen Port. Es können mehrere <directive
+ module="mpm_common">Listen</directive>-Anweisungen verwendet werden,
+ um eine Reihe von Adressen und Ports anzugeben, an denen gelauscht
+ werden soll. Der Server wird dann auf Anfragen an jeder der
+ abgehörten Adressen und Ports antworten.</p>
<p>Um beispielsweise den Server zu veranlassen, auf allen
- Netzwerkinterfaces sowohl an Port 80, als auch an Port 8000 Verbindungen
- zu akzeptieren, geben Sie an:</p>
+ Netzwerkinterfaces sowohl an Port 80, als auch an Port 8000
+ Verbindungen zu akzeptieren, geben Sie an:</p>
<example>
- Listen 80<br />
- Listen 8000
+ <highlight language="config">
+Listen 80
+Listen 8000
+ </highlight>
</example>
<p>Um den Server Verbindungen an Port 80 auf einem Netzwerkinterface
Sie an:</p>
<example>
- Listen 192.0.2.1:80<br />
- Listen 192.0.2.5:8000
+ <highlight language="config">
+Listen 192.0.2.1:80
+Listen 192.0.2.5:8000
+ </highlight>
</example>
<p>IPv6-Adressen müssen wie im folgenden Beispiel in eckigen
Klammern angegeben werden:</p>
<example>
+ <highlight language="config">
Listen [2001:db8::a00:20ff:fea7:ccea]:80
+ </highlight>
</example>
+
+ <note type="warning"><p>Sich überlappende <directive
+ module="mpm_common">Listen</directive>-Direktiven generieren einen
+ fatalen Fehler, der verhindert, dass der Server hochfährt.</p>
+
+ <example>
+ (48)Address already in use: make_sock: could not bind to address [::]:80
+ </example>
+
+ <p><a
+ href="http://wiki.apache.org/httpd/CouldNotBindToAddress">Diese
+ Diskussion im Wiki</a> gibt weitere Tipps zur Fehlerbehebung.</p>
+ </note>
</section>
<section id="ipv6">
<title>Betrachtung von IPv6-Besonderheiten</title>
<p>Eine wachsende Anzahl von Plattformen implementiert IPv6. Die
- <glossary>APR</glossary>
- unterstützt IPv6 auf den meisten dieser Plattformen und
- ermöglicht dem Apache, IPv6-Sockets zu verwenden und über IPv6
- gesendete Anfragen zu behandeln.</p>
-
- <p>Für Apache-Administratoren kommt erschwerend die Frage hinzu, ob
- IPv6-Sockets sowohl IPv4- als auch IPv6-Verbindungen
- handhaben können. Zum Betrieb von IPv4-Verbindungen an
- IPv6-Sockets werden auf IPv6 abgebildete IPv4-Adressen
- <transnote>so genannete IPv4-gemappte IPv6-Adressen</transnote>
- verwendet, welche standardmäßig auf den meisten Plattformen
- erlaubt sind. Unter FreeBSD, NetBSD und OpenBSD jedoch sind sie
- standardmäßig deaktiviert, um den Systemgrundsätzen dieser
- Plattformen zu entsprechen. Auf Systemen, wo dies
- standardmäßig dekativiert ist, kann dieses Verhalten mit einem
- speziellen <program>configure</program>-Parameter für den Apache
- geändert werden.</p>
-
- <p>Auf der anderen Seite ist die Verwendung von gemappten Adressen bei
- einigen Plattformen wie Linux und True64 der <strong>einzige</strong>
- Weg, sowohl IPv4 wie auch IPv6 zu verwenden. Wenn Sie möchten, dass
- der Apache IPv4- und IPv6-Verbindungen mit einem Minimum an Sockets
- behandelt, was die Verwendung von IPv4-gemappten IPv6-Adressen
- erfordert, dann müssen Sie die <program>
- configure</program>-Option <code>--enable-v4-mapped</code> angeben.</p>
+ <glossary>APR</glossary> unterstützt IPv6 auf den meisten
+ dieser Plattformen und ermöglicht dem httpd, IPv6-Sockets zu
+ verwenden und über IPv6 gesendete Anfragen zu behandeln.</p>
+
+ <p>Für httpd-Administratoren kommt erschwerend die Frage hinzu,
+ ob IPv6-Sockets sowohl IPv4- als auch IPv6-Verbindungen handhaben
+ können. Zum Betrieb von IPv4-Verbindungen an IPv6-Sockets
+ werden auf IPv6 abgebildete IPv4-Adressen <transnote>so genannete
+ IPv4-gemappte IPv6-Adressen</transnote> verwendet, welche
+ standardmäßig auf den meisten Plattformen erlaubt sind.
+ Unter FreeBSD, NetBSD und OpenBSD jedoch sind sie
+ standardmäßig deaktiviert, um den Systemgrundsätzen
+ dieser Plattformen zu entsprechen. Auf Systemen, wo dies
+ standardmäßig dekativiert ist, kann dieses Verhalten mit
+ einem speziellen <program>configure</program>-Parameter für den
+ httpd geändert werden.</p>
+
+ <p>Auf der anderen Seite ist die Verwendung von gemappten Adressen
+ bei einigen Plattformen wie Linux und True64 der
+ <strong>einzige</strong> Weg, sowohl IPv4 wie auch IPv6 zu
+ verwenden. Wenn Sie möchten, dass der <code>httpd</code> IPv4-
+ und IPv6-Verbindungen mit einem Minimum an Sockets behandelt, was
+ die Verwendung von IPv4-gemappten IPv6-Adressen erfordert, dann
+ müssen Sie die <program> configure</program>-Option
+ <code>--enable-v4-mapped</code> angeben.</p>
<p><code>--enable-v4-mapped</code> ist die Voreinstellung auf allen
- Plattformen außer FreeBSD, NetBSD und OpenBSD, so dass Ihr Apache
- wahrscheinlich so übersetzt wurde.</p>
+ Plattformen außer FreeBSD, NetBSD und OpenBSD, so dass Ihr
+ httpd wahrscheinlich so übersetzt wurde.</p>
<p>Geben Sie wie in dem folgenden Beispiel bei allen <directive
- module="mpm_common">Listen</directive>-Anweisungen eine IPv4-Adresse
- an, wenn Sie möchten, dass Ihr Apache lediglich IPv4-Adressen
- behandelt, unabhängig davon, was Ihre Plattform und die APR
- unterstützen:</p>
+ module="mpm_common">Listen</directive>-Anweisungen eine IPv4-Adresse
+ an, wenn Sie möchten, dass Ihr httpd lediglich IPv4-Adressen
+ behandelt, unabhängig davon, was Ihre Plattform und die APR
+ unterstützen:</p>
<example>
- Listen 0.0.0.0:80<br />
- Listen 192.0.2.1:80
+ <highlight language="config">
+Listen 0.0.0.0:80
+Listen 192.0.2.1:80
+ </highlight>
</example>
- <p>Wenn Sie möchten, dass der Apache IPv4- und IPv6-Verbindungen an
- separaten Sockets behandelt (d.h. IPv4-gemappte Adressen deaktiviert
- werden sollen) und Ihre Plattform es unterstützt, dann müssen
- Sie die <program>configure</program>-Option
- <code>--disable-v4-mapped</code> angeben.
- Unter FreeBSD, NetBSD und OpenBSD ist <code>--disable-v4-mapped</code>
- voreingestellt.</p>
+ <p>Wenn Sie möchten, dass der httpd IPv4- und IPv6-Verbindungen
+ an separaten Sockets behandelt (d.h. IPv4-gemappte Adressen
+ deaktiviert werden sollen) und Ihre Plattform es unterstützt,
+ dann müssen Sie die <program>configure</program>-Option
+ <code>--disable-v4-mapped</code> angeben. Unter FreeBSD, NetBSD und
+ OpenBSD ist <code>--disable-v4-mapped</code> voreingestellt.</p>
+ </section>
+
+ <section id="protocol">
+ <title>Angabe des Protokolls bei Listen</title>
+ <p>Das optionale zweite <var>Protokoll</var>-Argument von <directive
+ module="mpm_common">Listen</directive> ist für die meisten
+ Konfigurationen gar nicht erforderlich. Wenn nicht angegeben, sind
+ <code>https</code> für Port 443 und <code>http</code> für
+ alle anderen Ports die Voreinstellungen. Die Protokollangabe wird
+ sowohl dazu verwendet, herauszufinden, welches Modul Anfragen
+ verarbeiten soll, als auch, um protokollspezifische Optimierungen
+ bei der <directive module="core">AcceptFilter</directive>-Direktive
+ zu aktivieren.</p>
+
+ <p>Sie müssen das Protokoll nur angeben, wenn Sie
+ ungewöhnliche Ports benutzen, beispielsweise <code>https</code>
+ auf Port 8443:</p>
+
+ <example>
+ <highlight language="config">
+ Listen 192.170.2.1:8443 https
+ </highlight>
+ </example>
</section>
<section id="virtualhost">
<title>Das Zusammenspiel mit virtuellen Hosts</title>
<p>Die Direktive <directive module="mpm_common">Listen</directive>
- implementiert keine virtuellen Hosts - sie teilt dem Hauptserver lediglich
- mit, an welchen Adressen und Ports er zu lauschen hat. Werden keine
- <directive module="core" type="section">VirtualHost</directive>-Container
- verwendet, dann verhält sich der Server bei allen angenommenen
- Anfragen gleich. <directive module="core"
- type="section">VirtualHost</directive>-Abschnitte können jedoch dazu
- verwendet werden, ein unterschiedliches Verhalten für eine oder
- mehrere Adressen und Ports festzulegen. Um einen virtuellen Host
- einzurichten, muss dem Server zunächst mitgeteilt werden, an den
- betreffenden Adressen oder Ports zu lauschen. Dann sollte ein <directive
- module="core" type="section">VirtualHost</directive>-Abschnitt für
- die angebene Adresse und den angegebenen Port erstellt werden, um das
- Verhalten dieses virtuellen Hosts festzulegen. Beachten Sie bitte, dass
- auf einen <directive module="core" type="section">VirtualHost</directive>
- nicht zugegriffen werden kann, wenn er für eine Adresse und einen
- Port eingerichtet wurde, an dem der Server nicht lauscht.</p>
+ implementiert keine virtuellen Hosts - sie teilt dem Hauptserver
+ lediglich mit, an welchen Adressen und Ports er zu lauschen hat.
+ Werden keine <directive module="core"
+ type="section">VirtualHost</directive>-Container verwendet, dann
+ verhält sich der Server bei allen angenommenen Anfragen gleich.
+ <directive module="core"
+ type="section">VirtualHost</directive>-Abschnitte können jedoch
+ dazu verwendet werden, ein unterschiedliches Verhalten für eine
+ oder mehrere Adressen und Ports festzulegen. Um einen virtuellen
+ Host einzurichten, muss dem Server zunächst mitgeteilt werden,
+ an den betreffenden Adressen oder Ports zu lauschen. Dann sollte ein
+ <directive module="core"
+ type="section">VirtualHost</directive>-Abschnitt für die
+ angebene Adresse und den angegebenen Port erstellt werden, um das
+ Verhalten dieses virtuellen Hosts festzulegen. Beachten Sie bitte,
+ dass auf einen <directive module="core"
+ type="section">VirtualHost</directive> nicht zugegriffen werden
+ kann, wenn er für eine Adresse und einen Port eingerichtet
+ wurde, an dem der Server nicht lauscht.</p>
</section>
</manualpage>