|  | <?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: 1673947 --> | 
|  |  | 
|  | <!-- | 
|  | 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> | 
|  |  |