mirror of
https://github.com/apache/httpd.git
synced 2025-07-04 05:22:30 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1816112 13f79535-47bb-0310-9956-ffa450edef68
222 lines
9.2 KiB
XML
222 lines
9.2 KiB
XML
<?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: 1565321:1816110 (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="bind.xml.meta">
|
|
|
|
<title>An Adressen und Ports binden</title>
|
|
|
|
<summary>
|
|
<p>Konfiguration der vom Apache HTTP Server verwendeten Adressen und
|
|
Ports.</p>
|
|
</summary>
|
|
|
|
<seealso><a href="vhosts/">Virtuelle Hosts</a></seealso>
|
|
<seealso><a href="dns-caveats.html">Probleme bezüglich DNS und
|
|
Apache</a></seealso>
|
|
|
|
<section id="overview">
|
|
<title>Überblick</title>
|
|
|
|
<related>
|
|
<modulelist>
|
|
<module>core</module>
|
|
<module>mpm_common</module>
|
|
</modulelist>
|
|
<directivelist>
|
|
<directive module="core" type="section">VirtualHost</directive>
|
|
<directive module="mpm_common">Listen</directive>
|
|
</directivelist>
|
|
</related>
|
|
|
|
<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 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>
|
|
|
|
<example>
|
|
<highlight language="config">
|
|
Listen 80
|
|
Listen 8000
|
|
</highlight>
|
|
</example>
|
|
|
|
<p>Um den Server Verbindungen an Port 80 auf einem Netzwerkinterface
|
|
akzeptieren zu lassen und an Port 8080 auf einem anderen Interface, geben
|
|
Sie an:</p>
|
|
|
|
<example>
|
|
<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 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
|
|
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 httpd lediglich IPv4-Adressen
|
|
behandelt, unabhängig davon, was Ihre Plattform und die APR
|
|
unterstützen:</p>
|
|
|
|
<example>
|
|
<highlight language="config">
|
|
Listen 0.0.0.0:80
|
|
Listen 192.0.2.1:80
|
|
</highlight>
|
|
</example>
|
|
|
|
<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>
|
|
</section>
|
|
</manualpage>
|
|
|