mirror of
https://github.com/apache/httpd.git
synced 2025-07-29 12:10:29 +00:00

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1771657 13f79535-47bb-0310-9956-ffa450edef68
222 lines
9.8 KiB
Plaintext
222 lines
9.8 KiB
Plaintext
<?xml version="1.0" ?>
|
|
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
|
|
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
|
|
<!-- French translation : Lucien GENTIS -->
|
|
<!-- Reviewed by : Vincent Deffontaines -->
|
|
<!-- English Revision : 1565335 -->
|
|
|
|
<!--
|
|
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>Ecoute sélective</title>
|
|
|
|
<summary>
|
|
<p>Configuration du serveur HTTP Apache pour l'écoute
|
|
sur un port et une adresse IP spécifiques.</p>
|
|
</summary>
|
|
|
|
<seealso><a href="vhosts/">Hôtes virtuels</a></seealso>
|
|
<seealso><a href="dns-caveats.html">Problèmes liés à DNS</a></seealso>
|
|
|
|
<section id="overview">
|
|
<title>Vue d'ensemble</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>Au démarrage de httpd, un port et une adresse lui sont associés sur
|
|
l'hôte local et le serveur se met en attente de l'arrivée d'une requête.
|
|
Par défaut, le serveur écoute toutes les adresses de l'hôte local.
|
|
Cependant, on peut lui préciser des ports et des adresses spécifiques à écouter,
|
|
ou une combinaison des deux.
|
|
Tout ceci est souvent associé avec la fonctionnalité
|
|
des <a href="vhosts/">hôtes virtuels</a>
|
|
qui détermine la manière dont <code>httpd</code> répond aux différents ports,
|
|
noms d'hôtes et adresses IP.</p>
|
|
|
|
<p>La directive <directive module="mpm_common">Listen</directive>
|
|
enjoint le serveur de n'accepter des requêtes que sur le(s)
|
|
port(s) spécifiés ou
|
|
une combinaison adresse/port. Si seul un numéro de port est spécifié
|
|
dans la directive <directive module="mpm_common">Listen</directive>,
|
|
le serveur se met à l'écoute sur ce port, sur toutes les interfaces réseau.
|
|
Si une adresse IP est spécifiée en plus du port, le serveur va écouter
|
|
sur ce port, uniquement sur l'interface réseau correspondante. On peut utiliser
|
|
de multiples directives
|
|
<directive module="mpm_common">Listen</directive> pour
|
|
spécifier plusieurs adresses et ports à écouter. Le serveur répondra alors
|
|
aux requêtes sur ces ports et adresses spécifiés.</p>
|
|
|
|
<p>Par exemple, pour faire en sorte que le serveur accepte des connexions
|
|
sur les ports 80 et 8000, sur toutes les interfaces, utilisez :</p>
|
|
|
|
<example>
|
|
<highlight language="config">
|
|
Listen 80
|
|
Listen 8000
|
|
</highlight>
|
|
</example>
|
|
|
|
<p>Pour faire en sorte que le serveur accepte des connexions sur le port 80
|
|
pour une interface, et sur le port 8000 pour une
|
|
autre interface, utilisez :</p>
|
|
|
|
<example>
|
|
<highlight language="config">
|
|
Listen 192.0.2.1:80
|
|
Listen 192.0.2.5:8000
|
|
</highlight>
|
|
</example>
|
|
|
|
<p>Les adresses IPv6 doivent être mises entre crochets, comme dans
|
|
l'exemple suivant :</p>
|
|
|
|
<example>
|
|
<highlight language="config">
|
|
Listen [2001:db8::a00:20ff:fea7:ccea]:80
|
|
</highlight>
|
|
</example>
|
|
|
|
<note type="warning"><p>Des directives <directive
|
|
module="mpm_common">Listen</directive>
|
|
imbriquées provoqueront une erreur fatale qui
|
|
empêchera le serveur de démarrer.</p>
|
|
|
|
<example>
|
|
(48)Address already in use: make_sock: could not bind to address [::]:80
|
|
</example>
|
|
|
|
<p>Voir <a
|
|
href="http://wiki.apache.org/httpd/CouldNotBindToAddress">cette
|
|
discussion dans le wiki</a> pour plus de conseils pour résoudre ce
|
|
problème.</p>
|
|
|
|
</note>
|
|
|
|
</section>
|
|
|
|
<section id="ipv6">
|
|
<title>Remarques spécifiques à IPv6</title>
|
|
|
|
<p>Un nombre croissant de plateformes implémentent IPv6, et
|
|
<glossary>APR</glossary> supporte IPv6 sur la plupart d'entre elles,
|
|
ce qui permet à httpd d'allouer des points de connexion (sockets) IPv6
|
|
et de traiter des requêtes envoyées sur IPv6.</p>
|
|
|
|
<p>Les administrateurs de httpd doivent se préoccuper de la possibilité
|
|
pour un point de connexion IPv6 de traiter à la fois des connexions IPv4
|
|
et des connexions IPv6.
|
|
Le traitement de connexions IPv4 avec un point de connexion IPv6 utilise
|
|
des adresses IPv6 traduites en IPv4, qui sont autorisées par défaut sur la
|
|
plupart des plateformes, mais sont interdites par défaut sous FreeBSD, NetBSD,
|
|
et OpenBSD, afin de respecter la politique de sécurité du système sur ces plateformes.
|
|
Sur les systèmes où ces adresses sont interdites par défaut, un
|
|
paramètre spécial du script <program>configure</program> permet de modifier
|
|
ce comportement pour httpd.</p>
|
|
|
|
<p>En revanche, sur certaines plateformes comme Linux et Tru64, la
|
|
<strong>seule</strong> manière de gérer à la fois IPv6 et IPv4 passe
|
|
par l'utilisation d'adresses traduites. Si vous voulez que <code>httpd</code> gère
|
|
des connexions IPv4 et IPv6 avec un minimum de points de connexion,
|
|
ce qui nécessite l'utilisation d'adresses IPv6 traduites en IPv4,
|
|
utilisez l'option <code>--enable-v4-mapped</code> du script <program>
|
|
configure</program>.</p>
|
|
|
|
<p>L'option <code>--enable-v4-mapped</code> est utilisée par défaut sur
|
|
toutes les plateformes sauf FreeBSD, NetBSD, et OpenBSD;
|
|
votre httpd a donc probablement été construit avec cette option.</p>
|
|
|
|
<p>Si vous souhaitez que httpd ne gère que des connexions IPv4, sans se
|
|
soucier de ce que vos plateforme et APR supportent, spécifiez une adresse
|
|
IPv4 dans toutes les directives
|
|
<directive module="mpm_common">Listen</directive>, comme dans l'exemple
|
|
suivant :</p>
|
|
|
|
<example>
|
|
<highlight language="config">
|
|
Listen 0.0.0.0:80
|
|
Listen 192.0.2.1:80
|
|
</highlight>
|
|
</example>
|
|
|
|
<p>Si votre plateforme le supporte et si vous souhaitez que httpd gère
|
|
des connexions IPv4 et IPv6 sur des points de connexion séparés
|
|
(c'est à dire désactiver la traduction des adresses IPv6 au format IPv4),
|
|
utilisez l'option <code>--disable-v4-mapped</code> du script
|
|
<program> configure</program>. <code>--disable-v4-mapped</code> est
|
|
utilisé par défaut sur FreeBSD, NetBSD, et OpenBSD.</p>
|
|
</section>
|
|
|
|
<section id="protocol">
|
|
<title>Spécification du protocole avec Listen</title>
|
|
<p>Dans la plupart des configurations, le second paramètre optionnel
|
|
<var>protocol</var> de la directive <directive
|
|
module="mpm_common">Listen</directive> n'est pas obligatoire. S'il
|
|
n'est pas spécifié, les protocoles par défaut
|
|
sont <code>https</code> pour le port 443, et <code>http</code> pour
|
|
tous les autres ports. Le protocole sert à déterminer quel module
|
|
doit traiter une requête, et à appliquer les optimisations
|
|
spécifiques au protocole via la directive <directive
|
|
module="core">AcceptFilter</directive>.</p>
|
|
|
|
<p>Vous ne devez définir le protocole que si vous travaillez avec
|
|
des ports non standards. Par exemple, pour travailler en
|
|
<code>https</code> sur le port 8443 :</p>
|
|
|
|
<example>
|
|
<highlight language="config">
|
|
Listen 192.170.2.1:8443 https
|
|
</highlight>
|
|
</example>
|
|
</section>
|
|
|
|
<section id="virtualhost">
|
|
<title>Comment tout ceci fonctionne-t-il avec les hôtes virtuels</title>
|
|
|
|
<p> La directive <directive
|
|
module="mpm_common">Listen</directive> n'implémente pas les hôtes virtuels.
|
|
Elle indique simplement au serveur principal sur quels adresses et ports
|
|
il doit écouter. Si aucune directive
|
|
<directive module="core" type="section">VirtualHost</directive>
|
|
n'est présente, le serveur se comportera de la même façon pour toutes
|
|
les requêtes acceptées. En revanche, la directive
|
|
<directive module="core" type="section">VirtualHost</directive>
|
|
peut être utilisée pour provoquer une réaction différente du serveur
|
|
pour un ou plusieurs adresses ou ports. Pour implémenter un hôte virtuel,
|
|
on doit d'abord indiquer au serveur sur quels adresses et ports il doit écouter.
|
|
Ensuite, une section
|
|
<directive module="core" type="section">VirtualHost</directive>
|
|
doit être créée pour le couple adresse+port spécifié afin de définir le
|
|
comportement de cet hôte virtuel. Notez que si la directive
|
|
<directive module="core" type="section">VirtualHost</directive>
|
|
est définie pour une adresse et un port sur lesquels le serveur n'est pas censé
|
|
écouter, cet hôte virtuel ne sera pas accessible.</p>
|
|
</section>
|
|
</manualpage>
|
|
|