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
|
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- English Revision: 151405 -->
<!-- French translation by Vincent Deffontaines, review by alain B -->
<!--
Copyright 2005 The Apache Software Foundation or its licensors, as
applicable.
Licensed 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>Liaison</title>
<summary>
<p>Configuration des adresses et ports sur lesquels Apache écoute.</p>
</summary>
<seealso><a href="vhosts/">Serveurs Virtuels</a></seealso>
<seealso><a href="dns-caveats.html">Problèmes DNS</a></seealso>
<section id="overview">
<title>Informations générales</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 moment de son démarrage, Apache se lie à un port et à une
adresse sur la machine et se met en attente de requêtes entrantes.
Par défaut, toutes les adresses de la machine se retrouvent
à l'écoute. Dans tous les cas, Apache accepte d'écouter sur un
ou plusieurs ports spécifiques, ou sur une seule ou plusieurs
adresses, ou encore une combinaison des deux.
Il est fréquent d'utiliser ces possibilités avec les fonctionnalités
de Serveurs Virtuels, qui permettent de faire répondre Apache de
manière différente en fonction de l'adresse IP, du nom ou du port.</p>
<p>Le serveur utilise la directive
<directive module="mpm_common">Listen</directive>
pour n'accepter que des requêtes provenant de ports spécifiques ou
d'une combinaison adresse IP + port passés en argument.
Dans le cas où seul un port est spécifié avec la directive
<directive module="mpm_common">Listen</directive>,
le serveur se met à l'écoute sur le port spécifié, sur toutes
les interfaces et adresses de la machine. Si une adresse IP est
précisée en plus du port, le serveur n'écoute que sur l'adresse
et le port spécifiés. Il est possible de configurer plusieurs
directives <directive module="mpm_common">Listen</directive>,
afin qu'Apache écoute sur plusieurs adresses
et ports. Dans ce cas, le serveur répondra aux requêtes faites
sur tous les adresses et ports énumérés.</p>
<p>Par exemple, pour que le serveur accepte les connexions à la fois sur
les ports 80 et 8000, spécifiez :</p>
<example>
Listen 80<br />
Listen 8000
</example>
<p>Pour qu'Apache accepte les connexions sur deux combinaisons
adresses + ports, spécifiez :</p>
<example>
Listen 192.170.2.1:80<br />
Listen 192.170.2.5:8000
</example>
<p>Les adresses IPv6 sont acceptées, pourvu qu'elles soient entourées
entre crochets de la façon suivante :</p>
<example>
Listen [fe80::a00:20ff:fea7:ccea]:80
</example>
</section>
<section id="ipv6">
<title>Précisions au sujet d'IPv6</title>
<p>De plus en plus de plates-formes implémentent IPv6, et APR
supporte IPv6 sur la plupart d'entre elles, si bien qu'Apache
peut utiliser des sockets IPv6 et répondre aux requêtes envoyées
en IPv6.</p>
<p>Une complication possible pour les administrateurs Apache est de
savoir si un socket IPv6 est capable de gérer les connexions IPv4
aussi bien qu'IPv6. Gérer les connexions IPv4 sur une socket IPv6
suppose l'utilisation d'adresses IPv6 mappées en IPv4, ce qui est
le cas sur la plupart des plates-formes, mais pas sur FreeBSD, NetBSD
et OpenBSD, en raison des politiques systèmes de ces plates-formes.
Même sur des systèmes où cette fonctionnalité n'est pas activée par
défaut, un paramètre de compilation pour <program>configure</program>
permet de changer ce comportement pour Apache.</p>
<p>Pour qu'Apache puisse gérer à la fois les connexions IPv4 et IPv6
avec un minimum de sockets, il faut permettre l'utilisation des adresses
IPv6 mappées en IPv4, ce qui est faisable en spécifiant l'option
de compilation <code>--enable-v4-mapped</code> et en utilisant la
directive générique <directive module="mpm_common">Listen</directive>
comme suit :</p>
<example>
Listen 80
</example>
<p>Si <code>--enable-v4-mapped</code> a été spécifié à la compilation,
les directives Listen de la configuration par défaut sont de la forme
ci-dessus. <code>--enable-v4-mapped</code> est l'option de compilation
par défaut sur toutes les plates-formes, sauf pour FreeBSD, NetBSD, et
OpenBSD, donc il est probable que votre Apache ait été compilé avec
cette option.</p>
<p>Pour qu'Apache ne gère que les connexions IPv4, en ignorant l'éventuel
support IPv6 de la plate-forme ou d'APR, une adresse IPv4 peut être
donnée dans toutes les directives
<directive module="mpm_common">Listen</directive>, comme dans les
exemples suivants :</p>
<example>
Listen 0.0.0.0:80<br />
Listen 192.170.2.1:80
</example>
<p>Pour qu'Apache gère les connexions IPv4 et IPv6 sur des sockets
différents (i.e., pour ne pas accepter les adresses IPv6 mappées
en IPv4), spécifiez l'option de compilation
<code>--disable-v4-mapped</code> et utilisez des directives
Listen spécifiques telles que :</p>
<example>
Listen [::]:80<br />
Listen 0.0.0.0:80
</example>
<p>Si le paramètre <code>--disable-v4-mapped</code> a été défini
au moment de la compilation, les directives Listen de la
configuration par défaut sont de la forme ci-dessus.
<code>--disable-v4-mapped</code> est l'option de
compilation par défaut sous FreeBSD, NetBSD, et OpenBSD.</p>
</section>
<section id="virtualhost">
<title>Faire fonctionner tout ceci avec les Serveurs Virtuels</title>
<p>La directive <directive module="mpm_common">Listen</directive>
n'implémente aucun Serveur Virtuel. Elle sert simplement à
indiquer au serveur principal sur quels adresses et ports écouter.
Dans le cas où aucune section
<directive module="core" type="section">VirtualHost</directive>
n'est utilisée, le serveur répondra de la même manière pour toutes
les requêtes qu'il recevra.
Des sections
<directive module="core" type="section">VirtualHost</directive>
peuvent être utilisées pour qu'Apache réagisse différemment selon que la
requête est destinée à telle adresse ou à tel port. Avant d'implémenter
un Serveur Virtuel au moyen de la directive VirtualHost, la directive
Listen doit être configurée pour que le serveur écoute sur l'adresse
ou le port utilisé. Ensuite, une section
<directive module="core" type="section">VirtualHost</directive>
devrait être utilisée pour qu'Apache réagisse différemment selon
l'adresse ou le port.
À noter que si un Serveur Virtuel
<directive module="core" type="section">VirtualHost</directive>
est configuré sur une adresse et un port sur lesquels le serveur
n'est pas à l'écoute, le Serveur Virtuel ne sera pas accessible.</p>
</section>
</manualpage>
|