| <?xml version="1.0" encoding="ISO-8859-1" ?> |
| <!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> |
| |