1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>Ecoute sélective - Serveur HTTP Apache Version 2.4</title>
<link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
<script src="./style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="./images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p>
<p class="apache">Serveur HTTP Apache Version 2.4</p>
<img alt="" src="./images/feather.png" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="./">Version 2.4</a></div><div id="page-content"><div id="preamble"><h1>Ecoute sélective</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="./de/bind.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
<a href="./en/bind.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="./fr/bind.html" title="Français"> fr </a> |
<a href="./ja/bind.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="./ko/bind.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="./tr/bind.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div>
<p>Configuration du serveur HTTP Apache pour l'écoute
sur un port et une adresse IP spécifiques.</p>
</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#overview">Vue d'ensemble</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#reload">Changer la configuration de l'écoute au redémarrage</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#ipv6">Remarques spécifiques à IPv6</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#protocol">Spécification du protocole avec Listen</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#virtualhost">Comment tout ceci fonctionne-t-il avec les hôtes virtuels</a></li>
</ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="vhosts/">Hôtes virtuels</a></li><li><a href="dns-caveats.html">Problèmes liés à DNS</a></li><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="overview" id="overview">Vue d'ensemble</a></h2>
<table class="related"><tr><th>Modules Apparentés</th><th>Directives Apparentées</th></tr><tr><td><ul><li><code class="module"><a href="./mod/core.html">core</a></code></li><li><code class="module"><a href="./mod/mpm_common.html">mpm_common</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code></li><li><code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code></li></ul></td></tr></table>
<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 <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>
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 <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>,
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
<code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code> 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>
<div class="example"><pre class="prettyprint lang-config">Listen 80
Listen 8000</pre>
</div>
<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>
<div class="example"><pre class="prettyprint lang-config">Listen 192.0.2.1:80
Listen 192.0.2.5:8000</pre>
</div>
<p>Les adresses IPv6 doivent être mises entre crochets, comme dans
l'exemple suivant :</p>
<div class="example"><pre class="prettyprint lang-config">Listen [2001:db8::a00:20ff:fea7:ccea]:80</pre>
</div>
<div class="warning"><p>Des directives <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>
imbriquées provoqueront une erreur fatale qui
empêchera le serveur de démarrer.</p>
<div class="example"><p><code>
(48)Address already in use: make_sock: could not bind to address [::]:80
</code></p></div>
<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>
</div>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="reload" id="reload">Changer la configuration de l'écoute au redémarrage</a></h2>
<p>Lorsque httpd est redémarré, certaines remarques sont à prendre en compte
quant aux modifications apportées aux directives <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>. Au cours du redémarrage, httpd
conserve la liaison avec les ports de la configuration précédente afin
d'éviter l'obtention d'un message d'erreur "Connection refused" lors d'une
tentative ultérieure de connexion au serveur. Si les modifications apportées au jeu de
directives <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code> utilisé entrent
en conflit avec ce dernier, le serveur refusera de redémarrer.</p>
<p>Par exemple, modifier la configuration suivante :</p>
<div class="example"><pre class="prettyprint lang-config">Listen 127.0.0.1:80</pre>
</div>
<p>pour utiliser la suivante pourra échouer car écouter le port 80 sur
toutes les adresses IP entre en conflit avec une écoute sélective du port 80
sur la seule adresse IP 127.0.0.1.</p>
<div class="example"><pre class="prettyprint lang-config">Listen 80</pre>
</div>
<p>Pour qu'une telle modification de configuration soit prise en compte avec
succès, il est nécessaire d'arrêter, puis de démarrer le serveur.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="ipv6" id="ipv6">Remarques spécifiques à IPv6</a></h2>
<p>Un nombre croissant de plateformes implémentent IPv6, et
<a class="glossarylink" href="./glossary.html#apr" title="voir glossaire">APR</a> 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 <code class="program"><a href="./programs/configure.html">configure</a></code> 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 <code class="program"><a href="./programs/configure.html">configure</a></code>.</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
<code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>, comme dans l'exemple
suivant :</p>
<div class="example"><pre class="prettyprint lang-config">Listen 0.0.0.0:80
Listen 192.0.2.1:80</pre>
</div>
<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
<code class="program"><a href="./programs/configure.html">configure</a></code>. <code>--disable-v4-mapped</code> est
utilisé par défaut sur FreeBSD, NetBSD, et OpenBSD.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="protocol" id="protocol">Spécification du protocole avec Listen</a></h2>
<p>Dans la plupart des configurations, le second paramètre optionnel
<var>protocol</var> de la directive <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code> 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 <code class="directive"><a href="./mod/core.html#acceptfilter">AcceptFilter</a></code>.</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>
<div class="example"><pre class="prettyprint lang-config">Listen 192.170.2.1:8443 https</pre>
</div>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="virtualhost" id="virtualhost">Comment tout ceci fonctionne-t-il avec les hôtes virtuels</a></h2>
<p> La directive <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code> 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
<code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code>
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
<code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code>
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
<code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code>
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
<code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code>
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>
</div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="./de/bind.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
<a href="./en/bind.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="./fr/bind.html" title="Français"> fr </a> |
<a href="./ja/bind.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="./ko/bind.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="./tr/bind.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/bind.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2019 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>
|