summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/manual/vhosts/details.html.fr26
-rw-r--r--docs/manual/vhosts/details.xml.fr27
-rw-r--r--docs/manual/vhosts/examples.html.fr429
-rw-r--r--docs/manual/vhosts/examples.xml.fr408
-rw-r--r--docs/manual/vhosts/index.html.fr4
-rw-r--r--docs/manual/vhosts/index.xml.fr4
-rw-r--r--docs/manual/vhosts/mass.html4
-rw-r--r--docs/manual/vhosts/mass.html.en2
-rw-r--r--docs/manual/vhosts/mass.html.fr466
-rw-r--r--docs/manual/vhosts/mass.xml.fr443
-rw-r--r--docs/manual/vhosts/mass.xml.meta1
-rw-r--r--docs/manual/vhosts/name-based.html.fr311
-rw-r--r--docs/manual/vhosts/name-based.xml.fr317
13 files changed, 1683 insertions, 759 deletions
diff --git a/docs/manual/vhosts/details.html.fr b/docs/manual/vhosts/details.html.fr
index 003e450994..a3f1898b70 100644
--- a/docs/manual/vhosts/details.html.fr
+++ b/docs/manual/vhosts/details.html.fr
@@ -225,7 +225,7 @@ de configuration</a></h2>
<p>Dans le cas où le serveur principal n'a pas de <code>ServerName</code>
à ce stade, le nom de la machine sur laquelle tourne le programme
<code class="program"><a href="../programs/httpd.html">httpd</a></code> est utilisé à sa place. Nous appellerons
- <em>jeu d'adresses du serveur principal</em>, les adresses IP
+ <em>jeu d'adresses du serveur principal</em> les adresses IP
renvoyées par une résolution DNS sur le <code>ServerName</code>
du serveur principal.</p>
@@ -259,7 +259,7 @@ de configuration</a></h2>
<p>Si l'adresse IP n'est pas trouvée dans la table de hash, la
recherche du numéro de port peut aussi se terminer par une
correspondance à un <code>NameVirtualHost *</code> qui est géré
- ensuite comme les autres serveur virtuels par noms.</p>
+ ensuite comme les autres serveurs virtuels par noms.</p>
<p>Si une liste est bien trouvée dans la table pour l'adresse
IP recherchée, l'étape suivante est de déterminer s'il s'agit
@@ -284,8 +284,9 @@ de configuration</a></h2>
dans le fichier de configuration.</p>
<p>Le premier serveur virtuel de cette liste (donc, le premier
- serveur virtuel attribué à une adresse IP donnée dans le fichier
- de configuration) se voit attribuer la plus grande priorité, ce
+ serveur virtuel du fichier de configuration
+ attribué à l'adresse IP spécifiée)
+ se voit attribuer la plus grande priorité, ce
qui signifie que c'est lui qui traite les requêtes présentant un
nom de serveur invalide ou ne présentant pas de champ
<code>Host:</code> dans l'en-tête.</p>
@@ -299,7 +300,7 @@ de configuration</a></h2>
port sur lequel il a effectivement reçu la requête.</p>
<p>Dans le cas où le client a envoyé une requête en HTTP/1.0 sans
- un champ d'en-tête <code>Host:</code>, il est impossible de
+ champ d'en-tête <code>Host:</code>, il est impossible de
déterminer le serveur auquel le client veut se connecter&nbsp;; l'URI
de la requête est recherché dans tous les <code>ServerPath</code>
existants. Le premier chemin trouvé est utilisé et la requête est
@@ -341,8 +342,8 @@ de configuration</a></h2>
<ul>
<li>Les serveurs virtuels par nom et par IP n'interfèrent
jamais entre eux. Les serveurs virtuels par IP ne sont joignables
- qu'au travers de leur(s) adresse(s) IP propre(s), en aucun
- cas par aucune autre adresse. Les serveurs virtuels par nom
+ qu'au travers de leur(s) adresse(s) IP propre(s), et en aucun
+ cas par une autre adresse. Les serveurs virtuels par nom
ne sont accessibles que par leur(s) adresse(s) IP qui ne peuvent
être définies qu'au moyen de la directive
<code>NameVirtualHost</code>.</li>
@@ -390,7 +391,7 @@ de configuration</a></h2>
est également applicable aux serveurs virtuels
<code>NameVirtualHost *</code>.</li>
- <li>Le serveur principal ne sert à servir les requêtes que
+ <li>Le serveur principal ne sert les requêtes que
lorsque l'adresse IP et le port demandés par le client ne
correspondent à aucun serveur virtuel (y compris un serveur
virtuel <code>_default_</code>). En d'autres termes, le serveur
@@ -400,7 +401,7 @@ de configuration</a></h2>
<li>Ni les serveurs virtuels <code>_default_</code>, ni le
serveur principal ne sont utilisés pour traiter une requête
- avec un champ d'en-tête <code>Host:</code> manquant ou vide
+ avec un champ d'en-tête <code>Host:</code> inconnu ou manquant
lorsque l'adresse (et le port) de connexion correspondent à
des serveurs virtuels par nom, par exemple, dans une directive
<code>NameVirtualHost</code>.</li>
@@ -434,11 +435,12 @@ de configuration</a></h2>
-- la manière dont la configuration est interprétée après la
lecture des fichiers ne met pas en évidence le fait que les
définitions positionnées avant et surtout après les serveurs
- virtuels peuvent impacter le fonctionnement des serveurs virtuels.)</li>
+ virtuels peuvent impacter le fonctionnement de tous les
+ serveurs virtuels.)</li>
<li>Toujours regrouper les définitions <code>NameVirtualHost</code>
- et <code>VirtualHost</code> dans la configuration pour une
- meilleure lisibilité.</li>
+ et <code>VirtualHost</code> correspondantes
+ dans la configuration pour une meilleure lisibilité.</li>
<li>Éviter les <code>ServerPaths</code> qui sont préfixes
d'autres <code>ServerPaths</code>. Si cela ne peut être évité,
diff --git a/docs/manual/vhosts/details.xml.fr b/docs/manual/vhosts/details.xml.fr
index 024c7f344e..26d18c82cc 100644
--- a/docs/manual/vhosts/details.xml.fr
+++ b/docs/manual/vhosts/details.xml.fr
@@ -3,6 +3,7 @@
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 420990 -->
<!-- French translation by Vincent Deffontaines, review by alain B -->
+<!-- Updated by Lucien Gentis -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
@@ -221,7 +222,7 @@ de configuration</title>
<p>Dans le cas où le serveur principal n'a pas de <code>ServerName</code>
à ce stade, le nom de la machine sur laquelle tourne le programme
<program>httpd</program> est utilisé à sa place. Nous appellerons
- <em>jeu d'adresses du serveur principal</em>, les adresses IP
+ <em>jeu d'adresses du serveur principal</em> les adresses IP
renvoyées par une résolution DNS sur le <code>ServerName</code>
du serveur principal.</p>
@@ -255,7 +256,7 @@ de configuration</title>
<p>Si l'adresse IP n'est pas trouvée dans la table de hash, la
recherche du numéro de port peut aussi se terminer par une
correspondance à un <code>NameVirtualHost *</code> qui est géré
- ensuite comme les autres serveur virtuels par noms.</p>
+ ensuite comme les autres serveurs virtuels par noms.</p>
<p>Si une liste est bien trouvée dans la table pour l'adresse
IP recherchée, l'étape suivante est de déterminer s'il s'agit
@@ -280,8 +281,9 @@ de configuration</title>
dans le fichier de configuration.</p>
<p>Le premier serveur virtuel de cette liste (donc, le premier
- serveur virtuel attribué à une adresse IP donnée dans le fichier
- de configuration) se voit attribuer la plus grande priorité, ce
+ serveur virtuel du fichier de configuration
+ attribué à l'adresse IP spécifiée)
+ se voit attribuer la plus grande priorité, ce
qui signifie que c'est lui qui traite les requêtes présentant un
nom de serveur invalide ou ne présentant pas de champ
<code>Host:</code> dans l'en-tête.</p>
@@ -295,7 +297,7 @@ de configuration</title>
port sur lequel il a effectivement reçu la requête.</p>
<p>Dans le cas où le client a envoyé une requête en HTTP/1.0 sans
- un champ d'en-tête <code>Host:</code>, il est impossible de
+ champ d'en-tête <code>Host:</code>, il est impossible de
déterminer le serveur auquel le client veut se connecter&nbsp;; l'URI
de la requête est recherché dans tous les <code>ServerPath</code>
existants. Le premier chemin trouvé est utilisé et la requête est
@@ -337,8 +339,8 @@ de configuration</title>
<ul>
<li>Les serveurs virtuels par nom et par IP n'interfèrent
jamais entre eux. Les serveurs virtuels par IP ne sont joignables
- qu'au travers de leur(s) adresse(s) IP propre(s), en aucun
- cas par aucune autre adresse. Les serveurs virtuels par nom
+ qu'au travers de leur(s) adresse(s) IP propre(s), et en aucun
+ cas par une autre adresse. Les serveurs virtuels par nom
ne sont accessibles que par leur(s) adresse(s) IP qui ne peuvent
être définies qu'au moyen de la directive
<code>NameVirtualHost</code>.</li>
@@ -386,7 +388,7 @@ de configuration</title>
est également applicable aux serveurs virtuels
<code>NameVirtualHost *</code>.</li>
- <li>Le serveur principal ne sert à servir les requêtes que
+ <li>Le serveur principal ne sert les requêtes que
lorsque l'adresse IP et le port demandés par le client ne
correspondent à aucun serveur virtuel (y compris un serveur
virtuel <code>_default_</code>). En d'autres termes, le serveur
@@ -396,7 +398,7 @@ de configuration</title>
<li>Ni les serveurs virtuels <code>_default_</code>, ni le
serveur principal ne sont utilisés pour traiter une requête
- avec un champ d'en-tête <code>Host:</code> manquant ou vide
+ avec un champ d'en-tête <code>Host:</code> inconnu ou manquant
lorsque l'adresse (et le port) de connexion correspondent à
des serveurs virtuels par nom, par exemple, dans une directive
<code>NameVirtualHost</code>.</li>
@@ -430,11 +432,12 @@ de configuration</title>
-- la manière dont la configuration est interprétée après la
lecture des fichiers ne met pas en évidence le fait que les
définitions positionnées avant et surtout après les serveurs
- virtuels peuvent impacter le fonctionnement des serveurs virtuels.)</li>
+ virtuels peuvent impacter le fonctionnement de tous les
+ serveurs virtuels.)</li>
<li>Toujours regrouper les définitions <code>NameVirtualHost</code>
- et <code>VirtualHost</code> dans la configuration pour une
- meilleure lisibilité.</li>
+ et <code>VirtualHost</code> correspondantes
+ dans la configuration pour une meilleure lisibilité.</li>
<li>Éviter les <code>ServerPaths</code> qui sont préfixes
d'autres <code>ServerPaths</code>. Si cela ne peut être évité,
diff --git a/docs/manual/vhosts/examples.html.fr b/docs/manual/vhosts/examples.html.fr
index 44498753bd..c5612f7083 100644
--- a/docs/manual/vhosts/examples.html.fr
+++ b/docs/manual/vhosts/examples.html.fr
@@ -26,54 +26,54 @@
</div>
- <p>Le but de ce document est d'essayer de répondre aux questions
- les plus répandues sur la configuration des serveurs virtuels.
- Les scénarios présentés ici se rencontrent quand plusieurs
- serveurs Webs doivent tourner sur une seule et même machine au
- moyen de serveurs virtuels <a href="name-based.html">par nom</a>
+ <p>Le but de ce document est d'essayer de répondre aux questions
+ les plus répandues sur la configuration des serveurs virtuels.
+ Les scénarios présentés ici se rencontrent quand plusieurs
+ serveurs Webs doivent tourner sur une seule et même machine au
+ moyen de serveurs virtuels <a href="name-based.html">par nom</a>
ou <a href="ip-based.html">par IP</a>.</p>
</div>
-<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#purename">Fonctionnement de plusieurs serveurs
+<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#purename">Fonctionnement de plusieurs serveurs
virtuels par nom sur une seule adresse IP.</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#twoips">Serveurs virtuels par nom sur plus
+<li><img alt="" src="../images/down.gif" /> <a href="#twoips">Serveurs virtuels par nom sur plus
d'une seule adresse IP.</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#intraextra">Servir le même contenu sur des
- adresses IP différentes (telle qu'une adresse interne et une
+<li><img alt="" src="../images/down.gif" /> <a href="#intraextra">Servir le même contenu sur des
+ adresses IP différentes (telle qu'une adresse interne et une
externe).</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#port">Servir différents sites sur différents
+<li><img alt="" src="../images/down.gif" /> <a href="#port">Servir différents sites sur différents
ports.</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#ip">Hébergement virtuel basé sur IP</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#ipport">Hébergements virtuels mixtes basés sur
+<li><img alt="" src="../images/down.gif" /> <a href="#ipport">Hébergements virtuels mixtes basés sur
les ports et sur les IP</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#mixed">Hébergements virtuels mixtes basé sur
+<li><img alt="" src="../images/down.gif" /> <a href="#mixed">Hébergements virtuels mixtes basé sur
les noms et sur IP</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#proxy">Utilisation simultanée de
+<li><img alt="" src="../images/down.gif" /> <a href="#proxy">Utilisation simultanée de
<code>Virtual_host</code> et de mod_proxy</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#default">Utilisation de serveurs virtuels
+<li><img alt="" src="../images/down.gif" /> <a href="#default">Utilisation de serveurs virtuels
<code>_default_</code></a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#migrate">Migration d'un serveur virtuel
+<li><img alt="" src="../images/down.gif" /> <a href="#migrate">Migration d'un serveur virtuel
par nom en un serveur virtuel par IP</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#serverpath">Utilisation de la directive
+<li><img alt="" src="../images/down.gif" /> <a href="#serverpath">Utilisation de la directive
<code>ServerPath</code></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="purename" id="purename">Fonctionnement de plusieurs serveurs
+<h2><a name="purename" id="purename">Fonctionnement de plusieurs serveurs
virtuels par nom sur une seule adresse IP.</a></h2>
- <p>Votre serveur ne dispose que d'une seule adresse IP, et de
- nombreux alias (CNAMES) pointent vers cette adresse dans le DNS.
- Pour l'exemple, <code>www.example1.com</code> et
- <code>www.example2.org</code> doivent tourner sur cette machine.</p>
-
- <div class="note"><h3>Note&nbsp;:</h3><p>La configuration de serveurs virtuels
- sous Apache ne provoque pas leur apparition magique dans la
- configuration du DNS. Il <em>faut</em> que leurs noms soient
- définis dans le DNS, et qu'ils y soient résolus sur l'adresse IP
- du serveur, faute de quoi personne ne pourra visiter votre site Web.
- Il est possible d'ajouter des entrées dans le fichier
- <code>hosts</code> pour tests locaux, mais qui ne fonctionneront
+ <p>Votre serveur ne dispose que d'une seule adresse IP, et de
+ nombreux alias (CNAMES) pointent vers cette adresse dans le DNS.
+ Pour l'exemple, <code>www.example.com</code> et
+ <code>www.example.org</code> doivent tourner sur cette machine.</p>
+
+ <div class="note"><h3>Note&nbsp;:</h3><p>La configuration de serveurs virtuels
+ sous Apache ne provoque pas leur apparition magique dans la
+ configuration du DNS. Il <em>faut</em> que leurs noms soient
+ définis dans le DNS, et qu'ils y soient résolus sur l'adresse IP
+ du serveur, faute de quoi personne ne pourra visiter votre site Web.
+ Il est possible d'ajouter des entrées dans le fichier
+ <code>hosts</code> pour tests locaux, mais qui ne fonctionneront
que sur la machine possédant ces entrées.</p>
</div>
@@ -83,13 +83,13 @@
# Apache doit écouter sur le port 80<br />
Listen 80<br />
<br />
- # Toutes les adresses IP doivent répondre aux requêtes sur les
+ # Toutes les adresses IP doivent répondre aux requêtes sur les
# serveurs virtuels
NameVirtualHost *:80<br />
<br />
&lt;VirtualHost *:80&gt;<br />
<span class="indent">
- DocumentRoot /www/example1<br />
+ DocumentRoot /www/example.com<br />
ServerName www.example1.com<br />
<br />
# Autres directives ici<br />
@@ -99,7 +99,7 @@
<br />
&lt;VirtualHost *:80&gt;<br />
<span class="indent">
- DocumentRoot /www/example2<br />
+ DocumentRoot /www/example.org<br />
ServerName www.example2.org<br />
<br />
# Autres directives ici<br />
@@ -108,89 +108,88 @@
&lt;/VirtualHost&gt;
</code></p></div>
- <p>Les astérisques correspondent à toutes les adresses, si bien que
- le serveur principal ne répondra jamais à aucune requête. Comme
- <code>www.example1.com</code> se trouve en premier dans le fichier
- de configuration, il a la plus grande priorité et peut être vu
- comme serveur <cite>par défaut</cite> ou <cite>primaire</cite>&nbsp;;
- ce qui signifie que toute requête reçue ne correspondant pas à une
- des directives <code>ServerName</code> sera servie par ce premier
+ <p>Les astérisques correspondent à toutes les adresses, si bien que
+ le serveur principal ne répondra jamais à aucune requête. Comme
+ <code>www.example.com</code> se trouve en premier dans le fichier
+ de configuration, il a la plus grande priorité et peut être vu
+ comme serveur <cite>par défaut</cite> ou <cite>primaire</cite>&nbsp;;
+ ce qui signifie que toute requête reçue ne correspondant à aucune
+ des directives <code>ServerName</code> sera servie par ce premier
<code>VirtualHost</code>.</p>
<div class="note">
<h3>Note&nbsp;:</h3>
- <p>Si vous le souhaitez, vous pouvez remplacer <code>*</code>
- par l'adresse IP du système. Dans ce cas, l'argument de
- <code>VirtualHost</code> <em>doit</em> correspondre à
+ <p>Si vous le souhaitez, vous pouvez remplacer <code>*</code>
+ par l'adresse IP du système. Dans ce cas, l'argument de
+ <code>VirtualHost</code> <em>doit</em> correspondre à
l'argument de <code>NameVirtualHost</code>&nbsp;:</p>
<div class="example"><p><code>
NameVirtualHost 172.20.30.40<br />
- <br />
+ <br />
&lt;VirtualHost 172.20.30.40&gt;<br />
- # etc ...
+ # etc ...
</code></p></div>
- <p>En général, il est commode d'utiliser <code>*</code> sur
- les systèmes dont l'adresse IP n'est pas constante - par
- exemple, pour des serveurs dont l'adresse IP est attribuée
- dynamiquement par le FAI, et où le DNS est géré au moyen
- d'un DNS dynamique quelconque. Comme <code>*</code> signifie
- <cite>n'importe quelle adresse</cite>, cette configuration
- fonctionne sans devoir être modifiée quand l'adresse IP du
+ <p>En général, il est commode d'utiliser <code>*</code> sur
+ les systèmes dont l'adresse IP n'est pas constante - par
+ exemple, pour des serveurs dont l'adresse IP est attribuée
+ dynamiquement par le FAI, et où le DNS est géré au moyen
+ d'un DNS dynamique quelconque. Comme <code>*</code> signifie
+ <cite>n'importe quelle adresse</cite>, cette configuration
+ fonctionne sans devoir être modifiée quand l'adresse IP du
système est modifiée.</p>
</div>
- <p>La configuration ci-dessus est en pratique utilisée dans la
- plupart des cas pour les serveurs virtuels par nom. En fait, le
- seul cas où cette configuration ne fonctionne pas est lorsque
- différents contenus doivent être servis en fonction de l'adresse IP
+ <p>La configuration ci-dessus est en pratique utilisée dans la
+ plupart des cas pour les serveurs virtuels par nom. En fait, le
+ seul cas où cette configuration ne fonctionne pas est lorsque
+ différents contenus doivent être servis en fonction de l'adresse IP
et du port contactés par le client.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
-<h2><a name="twoips" id="twoips">Serveurs virtuels par nom sur plus
+<h2><a name="twoips" id="twoips">Serveurs virtuels par nom sur plus
d'une seule adresse IP.</a></h2>
- <div class="note">
- <h3>Note&nbsp;:</h3>
- <p>Toutes les techniques présentées ici
+ <div class="note">
+ <h3>Note&nbsp;:</h3><p>Toutes les techniques présentées ici
peuvent être étendues à un plus grand nombre d'adresses IP.</p>
</div>
- <p>Le serveur a deux adresses IP. Sur l'une
- (<code>172.20.30.40</code>), le serveur "principal"
- <code>server.domain.com</code> doit répondre, et sur l'autre
- (<code>172.20.30.50</code>), deux serveurs virtuels (ou plus)
+ <p>Le serveur a deux adresses IP. Sur l'une
+ (<code>172.20.30.40</code>), le serveur "principal"
+ <code>server.domain.com</code> doit répondre, et sur l'autre
+ (<code>172.20.30.50</code>), deux serveurs virtuels (ou plus)
répondront.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
Listen 80<br />
- <br />
+ <br />
# Serveur "principal" sur 172.20.30.40<br />
ServerName server.domain.com<br />
DocumentRoot /www/mainserver<br />
- <br />
+ <br />
# l'autre adresse <br />
NameVirtualHost 172.20.30.50<br />
- <br />
+ <br />
&lt;VirtualHost 172.20.30.50&gt;<br />
<span class="indent">
- DocumentRoot /www/example1<br />
- ServerName www.example1.com<br />
- <br />
+ DocumentRoot /www/example.com<br />
+ ServerName www.example.com<br />
+ <br />
# D'autres directives ici ...<br />
- <br />
+ <br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.50&gt;<br />
<span class="indent">
- DocumentRoot /www/example2<br />
- ServerName www.example2.org<br />
+ DocumentRoot /www/example.org<br />
+ ServerName www.example.org<br />
<br />
# D'autres directives ici ...<br />
<br />
@@ -198,28 +197,28 @@
&lt;/VirtualHost&gt;
</code></p></div>
- <p>Toute requête arrivant sur une autre adresse que
- <code>172.20.30.50</code> sera servie par le serveur principal.
- Les requêtes vers <code>172.20.30.50</code> avec un nom de serveur
- inconnu, ou sans en-tête <code>Host:</code>, seront servies par
- <code>www.example1.com</code>.</p>
+ <p>Toute requête arrivant sur une autre adresse que
+ <code>172.20.30.50</code> sera servie par le serveur principal.
+ Les requêtes vers <code>172.20.30.50</code> avec un nom de serveur
+ inconnu, ou sans en-tête <code>Host:</code>, seront servies par
+ <code>www.example.com</code>.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
-<h2><a name="intraextra" id="intraextra">Servir le même contenu sur des
- adresses IP différentes (telle qu'une adresse interne et une
+<h2><a name="intraextra" id="intraextra">Servir le même contenu sur des
+ adresses IP différentes (telle qu'une adresse interne et une
externe).</a></h2>
- <p>La machine serveur dispose de deux adresses IP
- (<code>192.168.1.1</code> et <code>172.20.30.40</code>). Cette
- machine est placée à la fois sur le réseau interne (l'Intranet)
- et le réseau externe (Internet). Sur Internet, le nom
- <code>server.example.com</code> pointe vers l'adresse externe
- (<code>172.20.30.40</code>), mais sur le réseau interne, ce même
+ <p>La machine serveur dispose de deux adresses IP
+ (<code>192.168.1.1</code> et <code>172.20.30.40</code>). Cette
+ machine est placée à la fois sur le réseau interne (l'Intranet)
+ et le réseau externe (Internet). Sur Internet, le nom
+ <code>server.example.com</code> pointe vers l'adresse externe
+ (<code>172.20.30.40</code>), mais sur le réseau interne, ce même
nom pointe vers l'adresse interne (<code>192.168.1.1</code>).</p>
- <p>Le serveur peut être configuré pour répondre de la même manière
- aux requêtes internes et externes, au moyen d'une seule section
+ <p>Le serveur peut être configuré pour répondre de la même manière
+ aux requêtes internes et externes, au moyen d'une seule section
<code>VirtualHost</code>.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -237,31 +236,31 @@
&lt;/VirtualHost&gt;
</code></p></div>
- <p>Ainsi, les requêtes en provenance de chacun des deux réseaux
+ <p>Ainsi, les requêtes en provenance de chacun des deux réseaux
seront servies par le même <code>VirtualHost</code>.</p>
<div class="note">
- <h3>Note&nbsp;:</h3><p>Sur le réseau interne, il est possible
- d'utiliser le nom raccourci <code>server</code> au lieu du nom
+ <h3>Note&nbsp;:</h3><p>Sur le réseau interne, il est possible
+ d'utiliser le nom raccourci <code>server</code> au lieu du nom
complet <code>server.example.com</code>.</p>
- <p>Notez également que dans l'exemple précédent, vous pouvez
- remplacer la liste des adresses IP par des <code>*</code> afin
- que le serveur réponde de la même manière sur toutes ses
+ <p>Notez également que dans l'exemple précédent, vous pouvez
+ remplacer la liste des adresses IP par des <code>*</code> afin
+ que le serveur réponde de la même manière sur toutes ses
adresses.</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="port" id="port">Servir différents sites sur différents
+<h2><a name="port" id="port">Servir différents sites sur différents
ports.</a></h2>
- <p>Vous disposez de plusieurs domaines pointant sur la même adresse
- IP et vous voulez également servir de multiples ports. Vous y
- parviendrez en définissant les ports dans la directive
- "NameVirtualHost". Si vous tentez d'utiliser &lt;VirtualHost
- name:port&gt; sans directive NameVirtualHost name:port, ou tentez
- d'utiliser la directive Listen, votre configuration ne fonctionnera
+ <p>Vous disposez de plusieurs domaines pointant sur la même adresse
+ IP et vous voulez également servir de multiples ports. Vous y
+ parviendrez en définissant les ports dans la directive
+ "NameVirtualHost". Si vous tentez d'utiliser &lt;VirtualHost
+ name:port&gt; sans directive NameVirtualHost name:port, ou tentez
+ d'utiliser la directive Listen, votre configuration ne fonctionnera
pas.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -275,28 +274,28 @@
<br />
&lt;VirtualHost 172.20.30.40:80&gt;<br />
<span class="indent">
- ServerName www.example1.com<br />
+ ServerName www.example.com<br />
DocumentRoot /www/domain-80<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40:8080&gt;<br />
<span class="indent">
- ServerName www.example1.com<br />
+ ServerName www.example.com<br />
DocumentRoot /www/domain-8080<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40:80&gt;<br />
<span class="indent">
- ServerName www.example2.org<br />
+ ServerName www.example.org<br />
DocumentRoot /www/otherdomain-80<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40:8080&gt;<br />
<span class="indent">
- ServerName www.example2.org<br />
+ ServerName www.example.org<br />
DocumentRoot /www/otherdomain-8080<br />
</span>
&lt;/VirtualHost&gt;
@@ -306,9 +305,9 @@
<div class="section">
<h2><a name="ip" id="ip">Hébergement virtuel basé sur IP</a></h2>
- <p>Le serveur dispose de deux adresses IP (<code>172.20.30.40</code>
- et <code>172.20.30.50</code>) correspondant respectivement aux noms
- <code>www.example1.com</code> et <code>www.example2.org</code>.</p>
+ <p>Le serveur dispose de deux adresses IP (<code>172.20.30.40</code>
+ et <code>172.20.30.50</code>) correspondant respectivement aux noms
+ <code>www.example.com</code> et <code>www.example.org</code>.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -317,33 +316,33 @@
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<span class="indent">
- DocumentRoot /www/example1<br />
+ DocumentRoot /www/example.com<br />
ServerName www.example1.com<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.50&gt;<br />
<span class="indent">
- DocumentRoot /www/example2<br />
+ DocumentRoot /www/example.org<br />
ServerName www.example2.org<br />
</span>
&lt;/VirtualHost&gt;
</code></p></div>
- <p>Les requêtes provenant d'adresses non spécifiées dans l'une des
- directives <code>&lt;VirtualHost&gt;</code> (comme pour
- <code>localhost</code> par exemple) seront dirigées vers le serveur
+ <p>Les requêtes provenant d'adresses non spécifiées dans l'une des
+ directives <code>&lt;VirtualHost&gt;</code> (comme pour
+ <code>localhost</code> par exemple) seront dirigées vers le serveur
principal, s'il en existe un.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
-<h2><a name="ipport" id="ipport">Hébergements virtuels mixtes basés sur
+<h2><a name="ipport" id="ipport">Hébergements virtuels mixtes basés sur
les ports et sur les IP</a></h2>
- <p>Le serveur dispose de deux adresses IP (<code>172.20.30.40</code>
- et <code>172.20.30.50</code>) correspondant respectivement aux noms
- <code>www.example1.com</code> et <code>www.example2.org</code>.
- Pour chacun d'eux, nous voulons un hébergement sur les ports 80
+ <p>Le serveur dispose de deux adresses IP (<code>172.20.30.40</code>
+ et <code>172.20.30.50</code>) correspondant respectivement aux noms
+ <code>www.example.com</code> et <code>www.example.org</code>.
+ Pour chacun d'eux, nous voulons un hébergement sur les ports 80
et 8080.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -356,39 +355,39 @@
<br />
&lt;VirtualHost 172.20.30.40:80&gt;<br />
<span class="indent">
- DocumentRoot /www/example1-80<br />
- ServerName www.example1.com<br />
+ DocumentRoot /www/example.com-80<br />
+ ServerName www.example.com<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40:8080&gt;<br />
<span class="indent">
- DocumentRoot /www/example1-8080<br />
- ServerName www.example1.com<br />
+ DocumentRoot /www/example.com-8080<br />
+ ServerName www.example.com<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.50:80&gt;<br />
<span class="indent">
- DocumentRoot /www/example2-80<br />
- ServerName www.example1.org<br />
+ DocumentRoot /www/example.org-80<br />
+ ServerName www.example.org<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.50:8080&gt;<br />
<span class="indent">
- DocumentRoot /www/example2-8080<br />
- ServerName www.example2.org<br />
+ DocumentRoot /www/example.org-8080<br />
+ ServerName www.example.org<br />
</span>
&lt;/VirtualHost&gt;
</code></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="mixed" id="mixed">Hébergements virtuels mixtes basé sur
+<h2><a name="mixed" id="mixed">Hébergements virtuels mixtes basé sur
les noms et sur IP</a></h2>
- <p>Pour certaines adresses, des serveurs virtuels seront définis
+ <p>Pour certaines adresses, des serveurs virtuels seront définis
par nom, et pour d'autres, ils seront définis par IP.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -400,59 +399,59 @@
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<span class="indent">
- DocumentRoot /www/example1<br />
- ServerName www.example1.com<br />
+ DocumentRoot /www/example.com<br />
+ ServerName www.example.com<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<span class="indent">
- DocumentRoot /www/example2<br />
- ServerName www.example2.org<br />
+ DocumentRoot /www/example.org<br />
+ ServerName www.example.org<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<span class="indent">
- DocumentRoot /www/example3<br />
- ServerName www.example3.net<br />
+ DocumentRoot /www/example.net<br />
+ ServerName www.example.net<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
# "par-IP"<br />
&lt;VirtualHost 172.20.30.50&gt;<br />
<span class="indent">
- DocumentRoot /www/example4<br />
- ServerName www.example4.edu<br />
+ DocumentRoot /www/example.edu<br />
+ ServerName www.example.edu<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.60&gt;<br />
<span class="indent">
- DocumentRoot /www/example5<br />
- ServerName www.example5.gov<br />
+ DocumentRoot /www/example.gov<br />
+ ServerName www.example.gov<br />
</span>
&lt;/VirtualHost&gt;
</code></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="proxy" id="proxy">Utilisation simultanée de
+<h2><a name="proxy" id="proxy">Utilisation simultanée de
<code>Virtual_host</code> et de mod_proxy</a></h2>
- <p>L'exemple suivant montre comment une machine peut mandater
- un serveur virtuel fonctionnant sur le serveur d'une autre machine.
- Dans cet exemple, un serveur virtuel de même nom est configuré sur
- une machine à l'adresse <code>192.168.111.2</code>. La directive
- <code class="directive"><a href="../mod/mod_proxy.html#proxypreservehost on">ProxyPreserveHost On</a></code> est
- employée pour permette au nom de domaine d'être préservé lors du
- transfert, au cas où plusieurs noms de domaines cohabitent sur
+ <p>L'exemple suivant montre comment une machine peut mandater
+ un serveur virtuel fonctionnant sur le serveur d'une autre machine.
+ Dans cet exemple, un serveur virtuel de même nom est configuré sur
+ une machine à l'adresse <code>192.168.111.2</code>. La directive
+ <code class="directive"><a href="../mod/mod_proxy.html#proxypreservehost on">ProxyPreserveHost On</a></code> est
+ employée pour permette au nom de domaine d'être préservé lors du
+ transfert, au cas où plusieurs noms de domaines cohabitent sur
une même machine.</p>
<div class="example"><p><code>
&lt;VirtualHost *:*&gt;<br />
ProxyPreserveHost On<br />
- ProxyPass / http://192.168.111.2/<br />
+ ProxyPass / http://192.168.111.2<br />
ProxyPassReverse / http://192.168.111.2/<br />
ServerName hostname.example.com<br />
&lt;/VirtualHost&gt;
@@ -460,14 +459,14 @@
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
-<h2><a name="default" id="default">Utilisation de serveurs virtuels
+<h2><a name="default" id="default">Utilisation de serveurs virtuels
<code>_default_</code></a></h2>
- <h3><a name="defaultallports" id="defaultallports">Serveurs virtuels
+ <h3><a name="defaultallports" id="defaultallports">Serveurs virtuels
<code>_default_</code> pour tous les ports</a></h3>
- <p>Exemple de capture de <em>toutes</em> les requêtes émanant
- d'adresses IP ou de ports non connus, <em>c'est-à-dire</em>, d'un
+ <p>Exemple de capture de <em>toutes</em> les requêtes émanant
+ d'adresses IP ou de ports non connus, <em>c'est-à-dire</em>, d'un
couple adresse/port non traité par aucun autre serveur virtuel.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -480,30 +479,30 @@
&lt;/VirtualHost&gt;
</code></p></div>
- <p>L'utilisation d'un tel serveur virtuel avec un joker pour le
- port empêche de manière efficace qu'une requête n'atteigne le
+ <p>L'utilisation d'un tel serveur virtuel avec un joker pour le
+ port empêche de manière efficace qu'une requête n'atteigne le
serveur principal.</p>
- <p>Un serveur virtuel par défaut ne servira jamais une requête
- qui est envoyée vers un couple adresse/port utilisée par un
- serveur virtuel par nom. Si la requête contient un en-tête
- <code>Host:</code> inconnu, ou si celui-ci est absent, elle
- sera toujours servie par le serveur virtuel primaire par nom
- (celui correspondant à ce couple adresse/port trouvé en premier
+ <p>Un serveur virtuel par défaut ne servira jamais une requête
+ qui est envoyée vers un couple adresse/port utilisée par un
+ serveur virtuel par nom. Si la requête contient un en-tête
+ <code>Host:</code> inconnu, ou si celui-ci est absent, elle
+ sera toujours servie par le serveur virtuel primaire par nom
+ (celui correspondant à ce couple adresse/port trouvé en premier
dans le fichier de configuration).</p>
- <p>Vous pouvez utiliser une directive
- <code class="directive"><a href="../mod/mod_alias.html#aliasmatch">AliasMatch</a></code> ou
- <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> afin de
- réécrire une requête pour une unique page d'information (ou pour
+ <p>Vous pouvez utiliser une directive
+ <code class="directive"><a href="../mod/mod_alias.html#aliasmatch">AliasMatch</a></code> ou
+ <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> afin de
+ réécrire une requête pour une unique page d'information (ou pour
un script).</p>
- <h3><a name="defaultdifferentports" id="defaultdifferentports">Serveurs virtuels
+ <h3><a name="defaultdifferentports" id="defaultdifferentports">Serveurs virtuels
<code>_default_</code> pour des ports différents</a></h3>
- <p>La configuration est similaire à l'exemple précédent, mais
- le serveur écoute sur plusieurs ports et un second serveur virtuel
+ <p>La configuration est similaire à l'exemple précédent, mais
+ le serveur écoute sur plusieurs ports et un second serveur virtuel
<code>_default_</code> pour le port 80 est ajouté.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -524,17 +523,17 @@
&lt;/VirtualHost&gt;
</code></p></div>
- <p>Le serveur virtuel par défaut défini pour le port 80 (il doit
- impérativement être placé avant un autre serveur virtuel par
- défaut traitant tous les ports grâce au joker *) capture toutes
- les requêtes envoyées sur une adresse IP non spécifiée. Le
+ <p>Le serveur virtuel par défaut défini pour le port 80 (il doit
+ impérativement être placé avant un autre serveur virtuel par
+ défaut traitant tous les ports grâce au joker *) capture toutes
+ les requêtes envoyées sur une adresse IP non spécifiée. Le
serveur principal n'est jamais utilisé pour servir une requête.</p>
- <h3><a name="defaultoneport" id="defaultoneport">Serveurs virtuels
+ <h3><a name="defaultoneport" id="defaultoneport">Serveurs virtuels
<code>_default_</code> pour un seul port</a></h3>
- <p>Nous voulons créer un serveur virtuel par défaut seulement
+ <p>Nous voulons créer un serveur virtuel par défaut seulement
pour le port 80.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -546,72 +545,72 @@
&lt;/VirtualHost&gt;
</code></p></div>
- <p>Une requête vers une adresse non spécifiée sur le port 80
- sera servie par le serveur virtuel par défaut, et toute autre
- requête vers une adresse et un port non spécifiés sera servie
+ <p>Une requête vers une adresse non spécifiée sur le port 80
+ sera servie par le serveur virtuel par défaut, et toute autre
+ requête vers une adresse et un port non spécifiés sera servie
par le serveur principal.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
-<h2><a name="migrate" id="migrate">Migration d'un serveur virtuel
+<h2><a name="migrate" id="migrate">Migration d'un serveur virtuel
par nom en un serveur virtuel par IP</a></h2>
- <p>Le serveur virtuel par nom avec le nom de domaine
- <code>www.example2.org</code> (de notre <a href="#name">exemple
- par nom</a>) devrait obtenir sa propre adresse IP. Pendant la
- phase de migration, il est possible d'éviter les problèmes avec
- les noms de serveurs et autres serveurs mandataires qui mémorisent
+ <p>Le serveur virtuel par nom avec le nom de domaine
+ <code>www.example.org</code> (de notre <a href="#name">exemple
+ par nom</a>) devrait obtenir sa propre adresse IP. Pendant la
+ phase de migration, il est possible d'éviter les problèmes avec
+ les noms de serveurs et autres serveurs mandataires qui mémorisent
les vielles adresses IP pour les serveurs virtuels par nom.<br />
- La solution est simple, car il suffit d'ajouter la nouvelle
- adresse IP (<code>172.20.30.50</code>) dans la directive
+ La solution est simple, car il suffit d'ajouter la nouvelle
+ adresse IP (<code>172.20.30.50</code>) dans la directive
<code>VirtualHost</code>.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
Listen 80<br />
- ServerName www.example1.com<br />
- DocumentRoot /www/example1<br />
+ ServerName www.example.com<br />
+ DocumentRoot /www/example.com<br />
<br />
NameVirtualHost 172.20.30.40<br />
<br />
&lt;VirtualHost 172.20.30.40 172.20.30.50&gt;<br />
<span class="indent">
- DocumentRoot /www/example2<br />
- ServerName www.example2.org<br />
+ DocumentRoot /www/example.org<br />
+ ServerName www.example.org<br />
# ...<br />
</span>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<span class="indent">
- DocumentRoot /www/example3<br />
- ServerName www.example3.net<br />
- ServerAlias *.example3.net<br />
+ DocumentRoot /www/example.net<br />
+ ServerName www.example.net<br />
+ ServerAlias *.example.net<br />
# ...<br />
</span>
&lt;/VirtualHost&gt;
</code></p></div>
- <p>Le serveur virtuel peut maintenant être joint par la nouvelle
- adresse (comme un serveur virtuel par IP) et par l'ancienne
+ <p>Le serveur virtuel peut maintenant être joint par la nouvelle
+ adresse (comme un serveur virtuel par IP) et par l'ancienne
adresse (comme un serveur virtuel par nom).</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
-<h2><a name="serverpath" id="serverpath">Utilisation de la directive
+<h2><a name="serverpath" id="serverpath">Utilisation de la directive
<code>ServerPath</code></a></h2>
- <p>Dans le cas où vous disposez de deux serveurs virtuels par nom,
- le client doit transmettre un en-tête <code>Host:</code> correct
- pour déterminer le serveur concerné. Les vieux clients HTTP/1.0
- n'envoient pas un tel en-tête et Apache n'a aucun indice pour
- connaître le serveur virtuel devant être joint (il sert la
- requête à partir d'un serveur virtuel primaire). Dans un soucis
- de préserver la compatibilité descendante, il suffit de créer
- un serveur virtuel primaire chargé de retourner une page contenant
- des liens dont les URLs auront un préfixe identifiant les serveurs
+ <p>Dans le cas où vous disposez de deux serveurs virtuels par nom,
+ le client doit transmettre un en-tête <code>Host:</code> correct
+ pour déterminer le serveur concerné. Les vieux clients HTTP/1.0
+ n'envoient pas un tel en-tête et Apache n'a aucun indice pour
+ connaître le serveur virtuel devant être joint (il sert la
+ requête à partir d'un serveur virtuel primaire). Dans un soucis
+ de préserver la compatibilité descendante, il suffit de créer
+ un serveur virtuel primaire chargé de retourner une page contenant
+ des liens dont les URLs auront un préfixe identifiant les serveurs
virtuels par nom.</p>
<div class="example"><h3>Configuration du serveur</h3><p><code>
@@ -652,21 +651,21 @@
&lt;/VirtualHost&gt;
</code></p></div>
- <p>À cause de la directive
- <code class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code>, une requête sur
- une URL <code>http://www.sub1.domain.tld/sub1/</code> est
+ <p>À cause de la directive
+ <code class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code>, une requête sur
+ une URL <code>http://www.sub1.domain.tld/sub1/</code> est
<em>toujours</em> servie par le serveur sub1-vhost.<br />
- Une requête sur une URL <code>http://www.sub1.domain.tld/</code> n'est
- servie par le serveur sub1-vhost que si le client envoie un en-tête
- <code>Host:</code> correct. Si aucun en-tête <code>Host:</code>
- n'est transmis, le serveur primaire sera utilisé.<br />
- Notez qu'il y a une singularité&nbsp;: une requête sur
- <code>http://www.sub2.domain.tld/sub1/</code> est également servie
- par le serveur sub1-vhost si le client n'envoie pas d'en-tête
- <code>Host:</code>.<br />
- Les directives <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>
- sont employées pour s'assurer que le client qui envoie un en-tête
- <code>Host:</code> correct puisse utiliser d'autres variantes d'URLs,
+ Une requête sur une URL <code>http://www.sub1.domain.tld/</code> n'est
+ servie par le serveur sub1-vhost que si le client envoie un en-tête
+ <code>Host:</code> correct. Si aucun en-tête <code>Host:</code>
+ n'est transmis, le serveur primaire sera utilisé.</p>
+ <p>Notez qu'il y a une singularité&nbsp;: une requête sur
+ <code>http://www.sub2.domain.tld/sub1/</code> est également servie
+ par le serveur sub1-vhost si le client n'envoie pas d'en-tête
+ <code>Host:</code>.</p>
+ <p>Les directives <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>
+ sont employées pour s'assurer que le client qui envoie un en-tête
+ <code>Host:</code> correct puisse utiliser d'autres variantes d'URLs,
<em>c'est-à-dire</em> avec ou sans préfixe d'URL.</p>
</div></div>
diff --git a/docs/manual/vhosts/examples.xml.fr b/docs/manual/vhosts/examples.xml.fr
index c37ae826fe..17f1406371 100644
--- a/docs/manual/vhosts/examples.xml.fr
+++ b/docs/manual/vhosts/examples.xml.fr
@@ -3,6 +3,7 @@
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 659902 -->
<!-- French translation by Vincent Deffontaines, Alain B., review by -->
+<!-- updated by Lucien Gentis -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
@@ -27,30 +28,30 @@
<summary>
- <p>Le but de ce document est d'essayer de répondre aux questions
- les plus répandues sur la configuration des serveurs virtuels.
- Les scénarios présentés ici se rencontrent quand plusieurs
- serveurs Webs doivent tourner sur une seule et même machine au
- moyen de serveurs virtuels <a href="name-based.html">par nom</a>
+ <p>Le but de ce document est d'essayer de répondre aux questions
+ les plus répandues sur la configuration des serveurs virtuels.
+ Les scénarios présentés ici se rencontrent quand plusieurs
+ serveurs Webs doivent tourner sur une seule et même machine au
+ moyen de serveurs virtuels <a href="name-based.html">par nom</a>
ou <a href="ip-based.html">par IP</a>.</p>
</summary>
- <section id="purename"><title>Fonctionnement de plusieurs serveurs
+ <section id="purename"><title>Fonctionnement de plusieurs serveurs
virtuels par nom sur une seule adresse IP.</title>
- <p>Votre serveur ne dispose que d'une seule adresse IP, et de
- nombreux alias (CNAMES) pointent vers cette adresse dans le DNS.
- Pour l'exemple, <code>www.example1.com</code> et
- <code>www.example2.org</code> doivent tourner sur cette machine.</p>
-
- <note><title>Note&nbsp;:</title><p>La configuration de serveurs virtuels
- sous Apache ne provoque pas leur apparition magique dans la
- configuration du DNS. Il <em>faut</em> que leurs noms soient
- définis dans le DNS, et qu'ils y soient résolus sur l'adresse IP
- du serveur, faute de quoi personne ne pourra visiter votre site Web.
- Il est possible d'ajouter des entrées dans le fichier
- <code>hosts</code> pour tests locaux, mais qui ne fonctionneront
+ <p>Votre serveur ne dispose que d'une seule adresse IP, et de
+ nombreux alias (CNAMES) pointent vers cette adresse dans le DNS.
+ Pour l'exemple, <code>www.example.com</code> et
+ <code>www.example.org</code> doivent tourner sur cette machine.</p>
+
+ <note><title>Note&nbsp;:</title><p>La configuration de serveurs virtuels
+ sous Apache ne provoque pas leur apparition magique dans la
+ configuration du DNS. Il <em>faut</em> que leurs noms soient
+ définis dans le DNS, et qu'ils y soient résolus sur l'adresse IP
+ du serveur, faute de quoi personne ne pourra visiter votre site Web.
+ Il est possible d'ajouter des entrées dans le fichier
+ <code>hosts</code> pour tests locaux, mais qui ne fonctionneront
que sur la machine possédant ces entrées.</p>
</note>
@@ -60,13 +61,13 @@
# Apache doit écouter sur le port 80<br />
Listen 80<br />
<br />
- # Toutes les adresses IP doivent répondre aux requêtes sur les
+ # Toutes les adresses IP doivent répondre aux requêtes sur les
# serveurs virtuels
NameVirtualHost *:80<br />
<br />
&lt;VirtualHost *:80&gt;<br />
<indent>
- DocumentRoot /www/example1<br />
+ DocumentRoot /www/example.com<br />
ServerName www.example1.com<br />
<br />
# Autres directives ici<br />
@@ -76,7 +77,7 @@
<br />
&lt;VirtualHost *:80&gt;<br />
<indent>
- DocumentRoot /www/example2<br />
+ DocumentRoot /www/example.org<br />
ServerName www.example2.org<br />
<br />
# Autres directives ici<br />
@@ -85,89 +86,88 @@
&lt;/VirtualHost&gt;
</example>
- <p>Les astérisques correspondent à toutes les adresses, si bien que
- le serveur principal ne répondra jamais à aucune requête. Comme
- <code>www.example1.com</code> se trouve en premier dans le fichier
- de configuration, il a la plus grande priorité et peut être vu
- comme serveur <cite>par défaut</cite> ou <cite>primaire</cite>&nbsp;;
- ce qui signifie que toute requête reçue ne correspondant pas à une
- des directives <code>ServerName</code> sera servie par ce premier
+ <p>Les astérisques correspondent à toutes les adresses, si bien que
+ le serveur principal ne répondra jamais à aucune requête. Comme
+ <code>www.example.com</code> se trouve en premier dans le fichier
+ de configuration, il a la plus grande priorité et peut être vu
+ comme serveur <cite>par défaut</cite> ou <cite>primaire</cite>&nbsp;;
+ ce qui signifie que toute requête reçue ne correspondant à aucune
+ des directives <code>ServerName</code> sera servie par ce premier
<code>VirtualHost</code>.</p>
<note>
<title>Note&nbsp;:</title>
- <p>Si vous le souhaitez, vous pouvez remplacer <code>*</code>
- par l'adresse IP du système. Dans ce cas, l'argument de
- <code>VirtualHost</code> <em>doit</em> correspondre à
+ <p>Si vous le souhaitez, vous pouvez remplacer <code>*</code>
+ par l'adresse IP du système. Dans ce cas, l'argument de
+ <code>VirtualHost</code> <em>doit</em> correspondre à
l'argument de <code>NameVirtualHost</code>&nbsp;:</p>
<example>
NameVirtualHost 172.20.30.40<br />
- <br />
+ <br />
&lt;VirtualHost 172.20.30.40&gt;<br />
- # etc ...
+ # etc ...
</example>
- <p>En général, il est commode d'utiliser <code>*</code> sur
- les systèmes dont l'adresse IP n'est pas constante - par
- exemple, pour des serveurs dont l'adresse IP est attribuée
- dynamiquement par le FAI, et où le DNS est géré au moyen
- d'un DNS dynamique quelconque. Comme <code>*</code> signifie
- <cite>n'importe quelle adresse</cite>, cette configuration
- fonctionne sans devoir être modifiée quand l'adresse IP du
+ <p>En général, il est commode d'utiliser <code>*</code> sur
+ les systèmes dont l'adresse IP n'est pas constante - par
+ exemple, pour des serveurs dont l'adresse IP est attribuée
+ dynamiquement par le FAI, et où le DNS est géré au moyen
+ d'un DNS dynamique quelconque. Comme <code>*</code> signifie
+ <cite>n'importe quelle adresse</cite>, cette configuration
+ fonctionne sans devoir être modifiée quand l'adresse IP du
système est modifiée.</p>
</note>
- <p>La configuration ci-dessus est en pratique utilisée dans la
- plupart des cas pour les serveurs virtuels par nom. En fait, le
- seul cas où cette configuration ne fonctionne pas est lorsque
- différents contenus doivent être servis en fonction de l'adresse IP
+ <p>La configuration ci-dessus est en pratique utilisée dans la
+ plupart des cas pour les serveurs virtuels par nom. En fait, le
+ seul cas où cette configuration ne fonctionne pas est lorsque
+ différents contenus doivent être servis en fonction de l'adresse IP
et du port contactés par le client.</p>
</section>
- <section id="twoips"><title>Serveurs virtuels par nom sur plus
+ <section id="twoips"><title>Serveurs virtuels par nom sur plus
d'une seule adresse IP.</title>
- <note>
- <title>Note&nbsp;:</title>
- <p>Toutes les techniques présentées ici
+ <note>
+ <title>Note&nbsp;:</title><p>Toutes les techniques présentées ici
peuvent être étendues à un plus grand nombre d'adresses IP.</p>
</note>
- <p>Le serveur a deux adresses IP. Sur l'une
- (<code>172.20.30.40</code>), le serveur "principal"
- <code>server.domain.com</code> doit répondre, et sur l'autre
- (<code>172.20.30.50</code>), deux serveurs virtuels (ou plus)
+ <p>Le serveur a deux adresses IP. Sur l'une
+ (<code>172.20.30.40</code>), le serveur "principal"
+ <code>server.domain.com</code> doit répondre, et sur l'autre
+ (<code>172.20.30.50</code>), deux serveurs virtuels (ou plus)
répondront.</p>
<example>
<title>Configuration du serveur</title>
Listen 80<br />
- <br />
+ <br />
# Serveur "principal" sur 172.20.30.40<br />
ServerName server.domain.com<br />
DocumentRoot /www/mainserver<br />
- <br />
+ <br />
# l'autre adresse <br />
NameVirtualHost 172.20.30.50<br />
- <br />
+ <br />
&lt;VirtualHost 172.20.30.50&gt;<br />
<indent>
- DocumentRoot /www/example1<br />
- ServerName www.example1.com<br />
- <br />
+ DocumentRoot /www/example.com<br />
+ ServerName www.example.com<br />
+ <br />
# D'autres directives ici ...<br />
- <br />
+ <br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.50&gt;<br />
<indent>
- DocumentRoot /www/example2<br />
- ServerName www.example2.org<br />
+ DocumentRoot /www/example.org<br />
+ ServerName www.example.org<br />
<br />
# D'autres directives ici ...<br />
<br />
@@ -175,28 +175,28 @@
&lt;/VirtualHost&gt;
</example>
- <p>Toute requête arrivant sur une autre adresse que
- <code>172.20.30.50</code> sera servie par le serveur principal.
- Les requêtes vers <code>172.20.30.50</code> avec un nom de serveur
- inconnu, ou sans en-tête <code>Host:</code>, seront servies par
- <code>www.example1.com</code>.</p>
+ <p>Toute requête arrivant sur une autre adresse que
+ <code>172.20.30.50</code> sera servie par le serveur principal.
+ Les requêtes vers <code>172.20.30.50</code> avec un nom de serveur
+ inconnu, ou sans en-tête <code>Host:</code>, seront servies par
+ <code>www.example.com</code>.</p>
</section>
- <section id="intraextra"><title>Servir le même contenu sur des
- adresses IP différentes (telle qu'une adresse interne et une
+ <section id="intraextra"><title>Servir le même contenu sur des
+ adresses IP différentes (telle qu'une adresse interne et une
externe).</title>
- <p>La machine serveur dispose de deux adresses IP
- (<code>192.168.1.1</code> et <code>172.20.30.40</code>). Cette
- machine est placée à la fois sur le réseau interne (l'Intranet)
- et le réseau externe (Internet). Sur Internet, le nom
- <code>server.example.com</code> pointe vers l'adresse externe
- (<code>172.20.30.40</code>), mais sur le réseau interne, ce même
+ <p>La machine serveur dispose de deux adresses IP
+ (<code>192.168.1.1</code> et <code>172.20.30.40</code>). Cette
+ machine est placée à la fois sur le réseau interne (l'Intranet)
+ et le réseau externe (Internet). Sur Internet, le nom
+ <code>server.example.com</code> pointe vers l'adresse externe
+ (<code>172.20.30.40</code>), mais sur le réseau interne, ce même
nom pointe vers l'adresse interne (<code>192.168.1.1</code>).</p>
- <p>Le serveur peut être configuré pour répondre de la même manière
- aux requêtes internes et externes, au moyen d'une seule section
+ <p>Le serveur peut être configuré pour répondre de la même manière
+ aux requêtes internes et externes, au moyen d'une seule section
<code>VirtualHost</code>.</p>
<example>
@@ -214,31 +214,31 @@
&lt;/VirtualHost&gt;
</example>
- <p>Ainsi, les requêtes en provenance de chacun des deux réseaux
+ <p>Ainsi, les requêtes en provenance de chacun des deux réseaux
seront servies par le même <code>VirtualHost</code>.</p>
<note>
- <title>Note&nbsp;:</title><p>Sur le réseau interne, il est possible
- d'utiliser le nom raccourci <code>server</code> au lieu du nom
+ <title>Note&nbsp;:</title><p>Sur le réseau interne, il est possible
+ d'utiliser le nom raccourci <code>server</code> au lieu du nom
complet <code>server.example.com</code>.</p>
- <p>Notez également que dans l'exemple précédent, vous pouvez
- remplacer la liste des adresses IP par des <code>*</code> afin
- que le serveur réponde de la même manière sur toutes ses
+ <p>Notez également que dans l'exemple précédent, vous pouvez
+ remplacer la liste des adresses IP par des <code>*</code> afin
+ que le serveur réponde de la même manière sur toutes ses
adresses.</p>
</note>
</section>
- <section id="port"><title>Servir différents sites sur différents
+ <section id="port"><title>Servir différents sites sur différents
ports.</title>
- <p>Vous disposez de plusieurs domaines pointant sur la même adresse
- IP et vous voulez également servir de multiples ports. Vous y
- parviendrez en définissant les ports dans la directive
- "NameVirtualHost". Si vous tentez d'utiliser &lt;VirtualHost
- name:port&gt; sans directive NameVirtualHost name:port, ou tentez
- d'utiliser la directive Listen, votre configuration ne fonctionnera
+ <p>Vous disposez de plusieurs domaines pointant sur la même adresse
+ IP et vous voulez également servir de multiples ports. Vous y
+ parviendrez en définissant les ports dans la directive
+ "NameVirtualHost". Si vous tentez d'utiliser &lt;VirtualHost
+ name:port&gt; sans directive NameVirtualHost name:port, ou tentez
+ d'utiliser la directive Listen, votre configuration ne fonctionnera
pas.</p>
<example>
@@ -252,28 +252,28 @@
<br />
&lt;VirtualHost 172.20.30.40:80&gt;<br />
<indent>
- ServerName www.example1.com<br />
+ ServerName www.example.com<br />
DocumentRoot /www/domain-80<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40:8080&gt;<br />
<indent>
- ServerName www.example1.com<br />
+ ServerName www.example.com<br />
DocumentRoot /www/domain-8080<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40:80&gt;<br />
<indent>
- ServerName www.example2.org<br />
+ ServerName www.example.org<br />
DocumentRoot /www/otherdomain-80<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40:8080&gt;<br />
<indent>
- ServerName www.example2.org<br />
+ ServerName www.example.org<br />
DocumentRoot /www/otherdomain-8080<br />
</indent>
&lt;/VirtualHost&gt;
@@ -283,9 +283,9 @@
<section id="ip"><title>Hébergement virtuel basé sur IP</title>
- <p>Le serveur dispose de deux adresses IP (<code>172.20.30.40</code>
- et <code>172.20.30.50</code>) correspondant respectivement aux noms
- <code>www.example1.com</code> et <code>www.example2.org</code>.</p>
+ <p>Le serveur dispose de deux adresses IP (<code>172.20.30.40</code>
+ et <code>172.20.30.50</code>) correspondant respectivement aux noms
+ <code>www.example.com</code> et <code>www.example.org</code>.</p>
<example>
<title>Configuration du serveur</title>
@@ -294,33 +294,33 @@
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<indent>
- DocumentRoot /www/example1<br />
+ DocumentRoot /www/example.com<br />
ServerName www.example1.com<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.50&gt;<br />
<indent>
- DocumentRoot /www/example2<br />
+ DocumentRoot /www/example.org<br />
ServerName www.example2.org<br />
</indent>
&lt;/VirtualHost&gt;
</example>
- <p>Les requêtes provenant d'adresses non spécifiées dans l'une des
- directives <code>&lt;VirtualHost&gt;</code> (comme pour
- <code>localhost</code> par exemple) seront dirigées vers le serveur
+ <p>Les requêtes provenant d'adresses non spécifiées dans l'une des
+ directives <code>&lt;VirtualHost&gt;</code> (comme pour
+ <code>localhost</code> par exemple) seront dirigées vers le serveur
principal, s'il en existe un.</p>
</section>
- <section id="ipport"><title>Hébergements virtuels mixtes basés sur
+ <section id="ipport"><title>Hébergements virtuels mixtes basés sur
les ports et sur les IP</title>
- <p>Le serveur dispose de deux adresses IP (<code>172.20.30.40</code>
- et <code>172.20.30.50</code>) correspondant respectivement aux noms
- <code>www.example1.com</code> et <code>www.example2.org</code>.
- Pour chacun d'eux, nous voulons un hébergement sur les ports 80
+ <p>Le serveur dispose de deux adresses IP (<code>172.20.30.40</code>
+ et <code>172.20.30.50</code>) correspondant respectivement aux noms
+ <code>www.example.com</code> et <code>www.example.org</code>.
+ Pour chacun d'eux, nous voulons un hébergement sur les ports 80
et 8080.</p>
<example>
@@ -333,39 +333,39 @@
<br />
&lt;VirtualHost 172.20.30.40:80&gt;<br />
<indent>
- DocumentRoot /www/example1-80<br />
- ServerName www.example1.com<br />
+ DocumentRoot /www/example.com-80<br />
+ ServerName www.example.com<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40:8080&gt;<br />
<indent>
- DocumentRoot /www/example1-8080<br />
- ServerName www.example1.com<br />
+ DocumentRoot /www/example.com-8080<br />
+ ServerName www.example.com<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.50:80&gt;<br />
<indent>
- DocumentRoot /www/example2-80<br />
- ServerName www.example1.org<br />
+ DocumentRoot /www/example.org-80<br />
+ ServerName www.example.org<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.50:8080&gt;<br />
<indent>
- DocumentRoot /www/example2-8080<br />
- ServerName www.example2.org<br />
+ DocumentRoot /www/example.org-8080<br />
+ ServerName www.example.org<br />
</indent>
&lt;/VirtualHost&gt;
</example>
</section>
- <section id="mixed"><title>Hébergements virtuels mixtes basé sur
+ <section id="mixed"><title>Hébergements virtuels mixtes basé sur
les noms et sur IP</title>
- <p>Pour certaines adresses, des serveurs virtuels seront définis
+ <p>Pour certaines adresses, des serveurs virtuels seront définis
par nom, et pour d'autres, ils seront définis par IP.</p>
<example>
@@ -377,59 +377,59 @@
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<indent>
- DocumentRoot /www/example1<br />
- ServerName www.example1.com<br />
+ DocumentRoot /www/example.com<br />
+ ServerName www.example.com<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<indent>
- DocumentRoot /www/example2<br />
- ServerName www.example2.org<br />
+ DocumentRoot /www/example.org<br />
+ ServerName www.example.org<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<indent>
- DocumentRoot /www/example3<br />
- ServerName www.example3.net<br />
+ DocumentRoot /www/example.net<br />
+ ServerName www.example.net<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
# "par-IP"<br />
&lt;VirtualHost 172.20.30.50&gt;<br />
<indent>
- DocumentRoot /www/example4<br />
- ServerName www.example4.edu<br />
+ DocumentRoot /www/example.edu<br />
+ ServerName www.example.edu<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.60&gt;<br />
<indent>
- DocumentRoot /www/example5<br />
- ServerName www.example5.gov<br />
+ DocumentRoot /www/example.gov<br />
+ ServerName www.example.gov<br />
</indent>
&lt;/VirtualHost&gt;
</example>
</section>
- <section id="proxy"><title>Utilisation simultanée de
+ <section id="proxy"><title>Utilisation simultanée de
<code>Virtual_host</code> et de mod_proxy</title>
- <p>L'exemple suivant montre comment une machine peut mandater
- un serveur virtuel fonctionnant sur le serveur d'une autre machine.
- Dans cet exemple, un serveur virtuel de même nom est configuré sur
- une machine à l'adresse <code>192.168.111.2</code>. La directive
- <directive module="mod_proxy">ProxyPreserveHost On</directive> est
- employée pour permette au nom de domaine d'être préservé lors du
- transfert, au cas où plusieurs noms de domaines cohabitent sur
+ <p>L'exemple suivant montre comment une machine peut mandater
+ un serveur virtuel fonctionnant sur le serveur d'une autre machine.
+ Dans cet exemple, un serveur virtuel de même nom est configuré sur
+ une machine à l'adresse <code>192.168.111.2</code>. La directive
+ <directive module="mod_proxy">ProxyPreserveHost On</directive> est
+ employée pour permette au nom de domaine d'être préservé lors du
+ transfert, au cas où plusieurs noms de domaines cohabitent sur
une même machine.</p>
<example>
&lt;VirtualHost *:*&gt;<br />
ProxyPreserveHost On<br />
- ProxyPass / http://192.168.111.2/<br />
+ ProxyPass / http://192.168.111.2<br />
ProxyPassReverse / http://192.168.111.2/<br />
ServerName hostname.example.com<br />
&lt;/VirtualHost&gt;
@@ -437,14 +437,14 @@
</section>
- <section id="default"><title>Utilisation de serveurs virtuels
+ <section id="default"><title>Utilisation de serveurs virtuels
<code>_default_</code></title>
- <section id="defaultallports"><title>Serveurs virtuels
+ <section id="defaultallports"><title>Serveurs virtuels
<code>_default_</code> pour tous les ports</title>
- <p>Exemple de capture de <em>toutes</em> les requêtes émanant
- d'adresses IP ou de ports non connus, <em>c'est-à-dire</em>, d'un
+ <p>Exemple de capture de <em>toutes</em> les requêtes émanant
+ d'adresses IP ou de ports non connus, <em>c'est-à-dire</em>, d'un
couple adresse/port non traité par aucun autre serveur virtuel.</p>
<example>
@@ -457,30 +457,30 @@
&lt;/VirtualHost&gt;
</example>
- <p>L'utilisation d'un tel serveur virtuel avec un joker pour le
- port empêche de manière efficace qu'une requête n'atteigne le
+ <p>L'utilisation d'un tel serveur virtuel avec un joker pour le
+ port empêche de manière efficace qu'une requête n'atteigne le
serveur principal.</p>
- <p>Un serveur virtuel par défaut ne servira jamais une requête
- qui est envoyée vers un couple adresse/port utilisée par un
- serveur virtuel par nom. Si la requête contient un en-tête
- <code>Host:</code> inconnu, ou si celui-ci est absent, elle
- sera toujours servie par le serveur virtuel primaire par nom
- (celui correspondant à ce couple adresse/port trouvé en premier
+ <p>Un serveur virtuel par défaut ne servira jamais une requête
+ qui est envoyée vers un couple adresse/port utilisée par un
+ serveur virtuel par nom. Si la requête contient un en-tête
+ <code>Host:</code> inconnu, ou si celui-ci est absent, elle
+ sera toujours servie par le serveur virtuel primaire par nom
+ (celui correspondant à ce couple adresse/port trouvé en premier
dans le fichier de configuration).</p>
- <p>Vous pouvez utiliser une directive
- <directive module="mod_alias">AliasMatch</directive> ou
- <directive module="mod_rewrite">RewriteRule</directive> afin de
- réécrire une requête pour une unique page d'information (ou pour
+ <p>Vous pouvez utiliser une directive
+ <directive module="mod_alias">AliasMatch</directive> ou
+ <directive module="mod_rewrite">RewriteRule</directive> afin de
+ réécrire une requête pour une unique page d'information (ou pour
un script).</p>
</section>
- <section id="defaultdifferentports"><title>Serveurs virtuels
+ <section id="defaultdifferentports"><title>Serveurs virtuels
<code>_default_</code> pour des ports différents</title>
- <p>La configuration est similaire à l'exemple précédent, mais
- le serveur écoute sur plusieurs ports et un second serveur virtuel
+ <p>La configuration est similaire à l'exemple précédent, mais
+ le serveur écoute sur plusieurs ports et un second serveur virtuel
<code>_default_</code> pour le port 80 est ajouté.</p>
<example>
@@ -501,17 +501,17 @@
&lt;/VirtualHost&gt;
</example>
- <p>Le serveur virtuel par défaut défini pour le port 80 (il doit
- impérativement être placé avant un autre serveur virtuel par
- défaut traitant tous les ports grâce au joker *) capture toutes
- les requêtes envoyées sur une adresse IP non spécifiée. Le
+ <p>Le serveur virtuel par défaut défini pour le port 80 (il doit
+ impérativement être placé avant un autre serveur virtuel par
+ défaut traitant tous les ports grâce au joker *) capture toutes
+ les requêtes envoyées sur une adresse IP non spécifiée. Le
serveur principal n'est jamais utilisé pour servir une requête.</p>
</section>
- <section id="defaultoneport"><title>Serveurs virtuels
+ <section id="defaultoneport"><title>Serveurs virtuels
<code>_default_</code> pour un seul port</title>
- <p>Nous voulons créer un serveur virtuel par défaut seulement
+ <p>Nous voulons créer un serveur virtuel par défaut seulement
pour le port 80.</p>
<example>
@@ -523,72 +523,72 @@
&lt;/VirtualHost&gt;
</example>
- <p>Une requête vers une adresse non spécifiée sur le port 80
- sera servie par le serveur virtuel par défaut, et toute autre
- requête vers une adresse et un port non spécifiés sera servie
+ <p>Une requête vers une adresse non spécifiée sur le port 80
+ sera servie par le serveur virtuel par défaut, et toute autre
+ requête vers une adresse et un port non spécifiés sera servie
par le serveur principal.</p>
</section>
</section>
- <section id="migrate"><title>Migration d'un serveur virtuel
+ <section id="migrate"><title>Migration d'un serveur virtuel
par nom en un serveur virtuel par IP</title>
- <p>Le serveur virtuel par nom avec le nom de domaine
- <code>www.example2.org</code> (de notre <a href="#name">exemple
- par nom</a>) devrait obtenir sa propre adresse IP. Pendant la
- phase de migration, il est possible d'éviter les problèmes avec
- les noms de serveurs et autres serveurs mandataires qui mémorisent
+ <p>Le serveur virtuel par nom avec le nom de domaine
+ <code>www.example.org</code> (de notre <a href="#name">exemple
+ par nom</a>) devrait obtenir sa propre adresse IP. Pendant la
+ phase de migration, il est possible d'éviter les problèmes avec
+ les noms de serveurs et autres serveurs mandataires qui mémorisent
les vielles adresses IP pour les serveurs virtuels par nom.<br />
- La solution est simple, car il suffit d'ajouter la nouvelle
- adresse IP (<code>172.20.30.50</code>) dans la directive
+ La solution est simple, car il suffit d'ajouter la nouvelle
+ adresse IP (<code>172.20.30.50</code>) dans la directive
<code>VirtualHost</code>.</p>
<example>
<title>Configuration du serveur</title>
Listen 80<br />
- ServerName www.example1.com<br />
- DocumentRoot /www/example1<br />
+ ServerName www.example.com<br />
+ DocumentRoot /www/example.com<br />
<br />
NameVirtualHost 172.20.30.40<br />
<br />
&lt;VirtualHost 172.20.30.40 172.20.30.50&gt;<br />
<indent>
- DocumentRoot /www/example2<br />
- ServerName www.example2.org<br />
+ DocumentRoot /www/example.org<br />
+ ServerName www.example.org<br />
# ...<br />
</indent>
&lt;/VirtualHost&gt;<br />
<br />
&lt;VirtualHost 172.20.30.40&gt;<br />
<indent>
- DocumentRoot /www/example3<br />
- ServerName www.example3.net<br />
- ServerAlias *.example3.net<br />
+ DocumentRoot /www/example.net<br />
+ ServerName www.example.net<br />
+ ServerAlias *.example.net<br />
# ...<br />
</indent>
&lt;/VirtualHost&gt;
</example>
- <p>Le serveur virtuel peut maintenant être joint par la nouvelle
- adresse (comme un serveur virtuel par IP) et par l'ancienne
+ <p>Le serveur virtuel peut maintenant être joint par la nouvelle
+ adresse (comme un serveur virtuel par IP) et par l'ancienne
adresse (comme un serveur virtuel par nom).</p>
</section>
- <section id="serverpath"><title>Utilisation de la directive
+ <section id="serverpath"><title>Utilisation de la directive
<code>ServerPath</code></title>
- <p>Dans le cas où vous disposez de deux serveurs virtuels par nom,
- le client doit transmettre un en-tête <code>Host:</code> correct
- pour déterminer le serveur concerné. Les vieux clients HTTP/1.0
- n'envoient pas un tel en-tête et Apache n'a aucun indice pour
- connaître le serveur virtuel devant être joint (il sert la
- requête à partir d'un serveur virtuel primaire). Dans un soucis
- de préserver la compatibilité descendante, il suffit de créer
- un serveur virtuel primaire chargé de retourner une page contenant
- des liens dont les URLs auront un préfixe identifiant les serveurs
+ <p>Dans le cas où vous disposez de deux serveurs virtuels par nom,
+ le client doit transmettre un en-tête <code>Host:</code> correct
+ pour déterminer le serveur concerné. Les vieux clients HTTP/1.0
+ n'envoient pas un tel en-tête et Apache n'a aucun indice pour
+ connaître le serveur virtuel devant être joint (il sert la
+ requête à partir d'un serveur virtuel primaire). Dans un soucis
+ de préserver la compatibilité descendante, il suffit de créer
+ un serveur virtuel primaire chargé de retourner une page contenant
+ des liens dont les URLs auront un préfixe identifiant les serveurs
virtuels par nom.</p>
<example>
@@ -629,21 +629,21 @@
&lt;/VirtualHost&gt;
</example>
- <p>À cause de la directive
- <directive module="core">ServerPath</directive>, une requête sur
- une URL <code>http://www.sub1.domain.tld/sub1/</code> est
+ <p>À cause de la directive
+ <directive module="core">ServerPath</directive>, une requête sur
+ une URL <code>http://www.sub1.domain.tld/sub1/</code> est
<em>toujours</em> servie par le serveur sub1-vhost.<br />
- Une requête sur une URL <code>http://www.sub1.domain.tld/</code> n'est
- servie par le serveur sub1-vhost que si le client envoie un en-tête
- <code>Host:</code> correct. Si aucun en-tête <code>Host:</code>
- n'est transmis, le serveur primaire sera utilisé.<br />
- Notez qu'il y a une singularité&nbsp;: une requête sur
- <code>http://www.sub2.domain.tld/sub1/</code> est également servie
- par le serveur sub1-vhost si le client n'envoie pas d'en-tête
- <code>Host:</code>.<br />
- Les directives <directive module="mod_rewrite">RewriteRule</directive>
- sont employées pour s'assurer que le client qui envoie un en-tête
- <code>Host:</code> correct puisse utiliser d'autres variantes d'URLs,
+ Une requête sur une URL <code>http://www.sub1.domain.tld/</code> n'est
+ servie par le serveur sub1-vhost que si le client envoie un en-tête
+ <code>Host:</code> correct. Si aucun en-tête <code>Host:</code>
+ n'est transmis, le serveur primaire sera utilisé.</p>
+ <p>Notez qu'il y a une singularité&nbsp;: une requête sur
+ <code>http://www.sub2.domain.tld/sub1/</code> est également servie
+ par le serveur sub1-vhost si le client n'envoie pas d'en-tête
+ <code>Host:</code>.</p>
+ <p>Les directives <directive module="mod_rewrite">RewriteRule</directive>
+ sont employées pour s'assurer que le client qui envoie un en-tête
+ <code>Host:</code> correct puisse utiliser d'autres variantes d'URLs,
<em>c'est-à-dire</em> avec ou sans préfixe d'URL.</p>
</section>
diff --git a/docs/manual/vhosts/index.html.fr b/docs/manual/vhosts/index.html.fr
index 4017255738..0842ab56b6 100644
--- a/docs/manual/vhosts/index.html.fr
+++ b/docs/manual/vhosts/index.html.fr
@@ -38,8 +38,8 @@
<p>Apache a été le précurseur des serveurs proposant cette
méthode de serveurs virtuels basés sur les adresses IP. Ses
- versions 1.1 et suivantes ont toujours proposées ces deux
- méthodes de serveurs virtuels par-IP et par-nom. Cette
+ versions 1.1 et suivantes proposent les deux
+ méthodes de serveurs virtuels : par-IP et par-nom. Cette
deuxième méthode est parfois également appelée <em>host-based</em>
ou <em>serveur virtuel non-IP</em>.</p>
diff --git a/docs/manual/vhosts/index.xml.fr b/docs/manual/vhosts/index.xml.fr
index 6d4357dd75..f640f1798f 100644
--- a/docs/manual/vhosts/index.xml.fr
+++ b/docs/manual/vhosts/index.xml.fr
@@ -40,8 +40,8 @@
<p>Apache a été le précurseur des serveurs proposant cette
méthode de serveurs virtuels basés sur les adresses IP. Ses
- versions 1.1 et suivantes ont toujours proposées ces deux
- méthodes de serveurs virtuels par-IP et par-nom. Cette
+ versions 1.1 et suivantes proposent les deux
+ méthodes de serveurs virtuels : par-IP et par-nom. Cette
deuxième méthode est parfois également appelée <em>host-based</em>
ou <em>serveur virtuel non-IP</em>.</p>
diff --git a/docs/manual/vhosts/mass.html b/docs/manual/vhosts/mass.html
index 408420d11b..28a83f3036 100644
--- a/docs/manual/vhosts/mass.html
+++ b/docs/manual/vhosts/mass.html
@@ -4,6 +4,10 @@ URI: mass.html.en
Content-Language: en
Content-type: text/html; charset=ISO-8859-1
+URI: mass.html.fr
+Content-Language: fr
+Content-type: text/html; charset=ISO-8859-1
+
URI: mass.html.ko.euc-kr
Content-Language: ko
Content-type: text/html; charset=EUC-KR
diff --git a/docs/manual/vhosts/mass.html.en b/docs/manual/vhosts/mass.html.en
index 54b9107e76..df168b182d 100644
--- a/docs/manual/vhosts/mass.html.en
+++ b/docs/manual/vhosts/mass.html.en
@@ -19,6 +19,7 @@
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.3</a> &gt; <a href="./">Virtual Hosts</a></div><div id="page-content"><div id="preamble"><h1>Dynamically Configured Mass Virtual Hosting</h1>
<div class="toplang">
<p><span>Available Languages: </span><a href="../en/vhosts/mass.html" title="English">&nbsp;en&nbsp;</a> |
+<a href="../fr/vhosts/mass.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="../ko/vhosts/mass.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/vhosts/mass.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div>
@@ -422,6 +423,7 @@ RewriteRule ^/(.*)$ %1/cgi-bin/$1 [H=cgi-script]
</div></div>
<div class="bottomlang">
<p><span>Available Languages: </span><a href="../en/vhosts/mass.html" title="English">&nbsp;en&nbsp;</a> |
+<a href="../fr/vhosts/mass.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="../ko/vhosts/mass.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/vhosts/mass.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div><div id="footer">
diff --git a/docs/manual/vhosts/mass.html.fr b/docs/manual/vhosts/mass.html.fr
new file mode 100644
index 0000000000..811687f148
--- /dev/null
+++ b/docs/manual/vhosts/mass.html.fr
@@ -0,0 +1,466 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!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><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>Hébergement virtuel de masse configuré dynamiquement - Serveur Apache HTTP</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 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="../faq/">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
+<p class="apache">Serveur Apache HTTP Version 2.3</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.3</a> &gt; <a href="./">Hébergement virtuel</a></div><div id="page-content"><div id="preamble"><h1>Hébergement virtuel de masse configuré dynamiquement</h1>
+<div class="toplang">
+<p><span>Langues Disponibles: </span><a href="../en/vhosts/mass.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
+<a href="../fr/vhosts/mass.html" title="Français">&nbsp;fr&nbsp;</a> |
+<a href="../ko/vhosts/mass.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
+<a href="../tr/vhosts/mass.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
+</div>
+
+
+ <p>Ce document propose une méthode performante pour servir un nombre
+ quelconque d'hôtes virtuels avec le serveur web httpd Apache.
+ </p>
+
+</div>
+<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#motivation">A qui ce document est-il destiné ?</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#overview">Vue d'ensemble</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#simple">Méthode simple d'hébergement virtuel
+dynamique</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#homepages">Un système de pages d'accueil hébergées
+virtuellement</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#combinations">Utiliser plusieurs systèmes
+d'hébergement virtuel sur le même serveur</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#ipbased">Pour un hébergement virtuel par IP plus
+efficace</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#simple.rewrite">Configuration de base pour un
+hébergement virtuel dynamique utilisant
+<code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code></a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#homepages.rewrite">Un système de pages d'accueil qui
+utilise<code>mod_rewrite</code></a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#xtra-conf">Utilisation d'un fichier de configuration
+séparé pour les serveurs virtuels</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="motivation" id="motivation">A qui ce document est-il destiné ?</a></h2>
+
+ <p>Les techniques décrites ici vous concernent si votre
+ <code>httpd.conf</code> contient de nombreuses sections
+ <code>&lt;VirtualHost&gt;</code> très semblables,
+ dans le style :</p>
+
+<div class="example"><p><code>
+NameVirtualHost 111.22.33.44<br />
+&lt;VirtualHost 111.22.33.44&gt;<br />
+<span class="indent">
+ ServerName www.customer-1.com<br />
+ DocumentRoot /www/hosts/www.customer-1.com/docs<br />
+ ScriptAlias /cgi-bin/ /www/hosts/www.customer-1.com/cgi-bin<br />
+</span>
+&lt;/VirtualHost&gt;<br />
+&lt;VirtualHost 111.22.33.44&gt;<br />
+<span class="indent">
+ ServerName www.customer-2.com<br />
+ DocumentRoot /www/hosts/www.customer-2.com/docs<br />
+ ScriptAlias /cgi-bin/ /www/hosts/www.customer-2.com/cgi-bin<br />
+</span>
+&lt;/VirtualHost&gt;<br />
+# bla bla bla<br />
+&lt;VirtualHost 111.22.33.44&gt;<br />
+<span class="indent">
+ ServerName www.customer-N.com<br />
+ DocumentRoot /www/hosts/www.customer-N.com/docs<br />
+ ScriptAlias /cgi-bin/ /www/hosts/www.customer-N.com/cgi-bin<br />
+</span>
+&lt;/VirtualHost&gt;
+</code></p></div>
+
+ <p>L'idée de base consiste à remplacer toutes les configurations
+ <code>&lt;VirtualHost&gt;</code> par un mécanisme qui les génère
+ dynamiquement. Ceci présente certains avantages :</p>
+
+ <ol>
+ <li>Votre fichier de configuration est plus petit, ainsi Apache
+ démarre plus rapidement et consomme moins de mémoire.</li>
+
+ <li>Pour ajouter des serveurs virtuels, il suffit de créer les
+ répertoires appropriés dans le système de fichiers et les entrées
+ dans le DNS - il n'est plus nécessaire de reconfigurer ou de
+ redémarrer Apache.</li>
+ </ol>
+
+ <p>Le principal désavantage réside dans le fait que vous ne pouvez
+ pas définir un fichier journal différent pour chaque serveur
+ virtuel. De toute façon, ce serait une mauvaise idée si vous avez de
+ nombreux serveurs virtuels, car cela nécessiterait un nombre
+ important de descripteurs de fichiers. Il est préférable de
+ rediriger les journaux via un pipe ou une pile fifo vers un
+ programme, et faire en sorte que ce dernier distribue les journaux
+ les concernant aux différents clients (Ce qui peut aussi servir à
+ accumuler des données à des fins de statistiques, etc...).</p>
+
+</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>
+
+ <p>Un serveur virtuel peut être défini par deux informations : son
+ adresse IP, et le contenu de l'en-tête <code>Host:</code> de la
+ requête HTTP. La technique d'hébergement virtuel dynamique de masse
+ utilisée ici consiste à insérer automatiquement ces informations
+ dans le chemin du fichier à utiliser pour répondre à la requête. On
+ peut y parvenir assez facilement en utilisant
+ <code class="module"><a href="../mod/mod_vhost_alias.html">mod_vhost_alias</a></code> avec Apache 2.0, mais on peut aussi
+ utiliser <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>. Par défaut, ces deux modules
+ sont désactivés ; vous devez activer l'un d'eux lors de la
+ compilation et de la configuration d'Apache si vous voulez utiliser
+ cette technique.</p>
+
+ <p>Certains paramètres doivent être adaptés pour que le serveur
+ dynamique se présente comme un serveur dynamique normal. Le plus
+ important est le nom du serveur, qu'Apache utilise pour générer des
+ URLs d'auto-référencement, etc... Il est défini via la directive
+ <code>ServerName</code>, et les CGIs peuvent s'y référer via la
+ variable d'environnement <code>SERVER_NAME</code>. Sa véritable
+ valeur utilisée à l'exécution est contrôlée par la définition de la
+ directive
+ <code class="directive"><a href="../mod/core.html#usecanonicalname">UseCanonicalName</a></code>. Avec
+ <code>UseCanonicalName Off</code>, le nom du serveur correspond au
+ contenu de l'en-tête <code>Host:</code> de la requête. Avec
+ <code>UseCanonicalName DNS</code>, il est extrait d'une recherche
+ DNS inverse sur l'adresse IP du serveur virtuel. La première
+ configuration est utilisée pour l'hébergement virtuel dynamique par
+ nom, et la deuxième pour l'hébergement virtuel dynamique par IP. Si
+ Apache ne peut pas déterminer le nom du serveur, soit parce qu'il
+ n'y a pas d'en-tête <code>Host:</code>, soit parce que la recherche
+ DNS a échoué, il prend en compte la valeur définie par la directive
+ <code>ServerName</code>.</p>
+
+ <p>L'autre paramètre à adapter est la racine des documents (définie
+ via la directive <code>DocumentRoot</code> et disponible pour les
+ CGIs via la variable d'environnement <code>DOCUMENT_ROOT</code>).
+ Dans une configuration classique, il est utilisé par le module core
+ pour faire correspondre les URIs aux noms de fichiers, mais lorsque
+ la configuration du serveur comporte des serveurs virtuels, ce
+ traitement doit être pris en charge par un autre module (soit
+ <code>mod_vhost_alias</code>, soit <code>mod_rewrite</code>), qui
+ utilise un méthode de correspondance différente. Aucun de ces
+ modules ne se chargeant de définir la variable d'environnement
+ <code>DOCUMENT_ROOT</code>, si des CGIs ou des documents SSI
+ doivent en faire usage, ils obtiendront une valeur erronée.</p>
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="simple" id="simple">Méthode simple d'hébergement virtuel
+dynamique</a></h2>
+
+ <p>Cet extrait de fichier <code>httpd.conf</code> implémente
+ l'hébergement virtuel décrit dans la section <a href="#motivation">À qui ce document est-il destiné ?</a> ci-dessus,
+ mais selon une méthode générique utilisant
+ <code>mod_vhost_alias</code>.</p>
+
+<div class="example"><p><code>
+# extrait le nom du serveur de l'en-tête Host:<br />
+UseCanonicalName Off<br />
+<br />
+# ce format de journal peut être éclaté en journaux par serveur virtuel
+# à l'aide du premier champ<br />
+LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br />
+CustomLog logs/access_log vcommon<br />
+<br />
+# inclut le nom du serveur dans les noms de fichiers ressources
+# nécessaires aux traitements des requêtes<br />
+VirtualDocumentRoot /www/hosts/%0/docs<br />
+VirtualScriptAlias /www/hosts/%0/cgi-bin
+</code></p></div>
+
+ <p>Pour changer cette configuration en solution de serveur virtuel
+ par IP, il suffit de remplacer <code>UseCanonicalName
+ Off</code> par <code>UseCanonicalName DNS</code>. Le nom du serveur
+ inséré dans le nom de fichier sera alors déduit de l'adresse IP du
+ serveur virtuel.</p>
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="homepages" id="homepages">Un système de pages d'accueil hébergées
+virtuellement</a></h2>
+
+ <p>Il s'agit d'une adaptation du système ci-dessus, ajusté pour un
+ serveur de pages d'accueil de FAI. Avec une configuration un peu
+ plus compliquée, on peut extraire des sous-chaînes de caractères du
+ nom du serveur pour les utiliser dans le nom de fichier afin, par
+ exemple, de définir <code>/home/user/</code> comme emplacement des
+ documents pour <code>www.user.isp.com</code>. Un seul répertoire
+ <code>cgi-bin</code> suffit pour l'ensemble des
+ serveurs virtuels.</p>
+
+<div class="example"><p><code>
+# les directives préliminaires sont identiques à celles de l'exemple
+# ci-dessus ; il vient ensuite :<br />
+<br />
+# insertion d'une partie du nom du serveur dans les noms de fichiers<br />
+VirtualDocumentRoot /www/hosts/%2/docs<br />
+<br />
+# répertoire cgi-bin unique<br />
+ScriptAlias /cgi-bin/ /www/std-cgi/<br />
+</code></p></div>
+
+ <p>Vous trouverez des exemples plus élaborés d'utilisation de la
+ directive <code>VirtualDocumentRoot</code> dans la documentation du
+ module <code class="module"><a href="../mod/mod_vhost_alias.html">mod_vhost_alias</a></code>.</p>
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="combinations" id="combinations">Utiliser plusieurs systèmes
+d'hébergement virtuel sur le même serveur</a></h2>
+
+ <p>Moyennant une configuration un peu plus compliquée, vous pouvez
+ contrôler la portée des différentes configurations d'hébergement
+ virtuel à l'aide des directives <code>&lt;VirtualHost&gt;</code>
+ normales d'Apache. Par exemple, on peut associer une adresse IP pour
+ les pages d'accueil des clients en général, et une autre pour les
+ clients commerciaux avec la configuration suivante. Cette
+ configuration peut bien entendu être combinée avec les sections
+ <code>&lt;VirtualHost&gt;</code> conventionnelles.</p>
+
+<div class="example"><p><code>
+UseCanonicalName Off<br />
+<br />
+LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br />
+<br />
+&lt;Directory /www/commercial&gt;<br />
+<span class="indent">
+ Options FollowSymLinks<br />
+ AllowOverride All<br />
+</span>
+&lt;/Directory&gt;<br />
+<br />
+&lt;Directory /www/homepages&gt;<br />
+<span class="indent">
+ Options FollowSymLinks<br />
+ AllowOverride None<br />
+</span>
+&lt;/Directory&gt;<br />
+<br />
+&lt;VirtualHost 111.22.33.44&gt;<br />
+<span class="indent">
+ ServerName www.commercial.isp.com<br />
+ <br />
+ CustomLog logs/access_log.commercial vcommon<br />
+ <br />
+ VirtualDocumentRoot /www/commercial/%0/docs<br />
+ VirtualScriptAlias /www/commercial/%0/cgi-bin<br />
+</span>
+&lt;/VirtualHost&gt;<br />
+<br />
+&lt;VirtualHost 111.22.33.45&gt;<br />
+<span class="indent">
+ ServerName www.homepages.isp.com<br />
+ <br />
+ CustomLog logs/access_log.homepages vcommon<br />
+ <br />
+ VirtualDocumentRoot /www/homepages/%0/docs<br />
+ ScriptAlias /cgi-bin/ /www/std-cgi/<br />
+</span>
+&lt;/VirtualHost&gt;
+</code></p></div>
+
+<div class="note">
+ <h3>Note</h3>
+ <p>Si le premier bloc VirtualHost ne comporte <em>pas</em> de
+ directive <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>, c'est
+ le nom issu d'une recherche DNS inverse à partir de l'adresse IP
+ du serveur virtuel qui sera utilisé. Si ce nom ne correspond pas
+ à celui que vous voulez utiliser, vous pouvez ajouter une entrée
+ de remplacement (<code>ServerName
+ none.example.com</code>) pour éviter ce comportement.</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="ipbased" id="ipbased">Pour un hébergement virtuel par IP plus
+efficace</a></h2>
+
+ <p>Les changements de configuration suggérés pour transformer <a href="#simple">le premier exemple</a> en hébergement virtuel par IP
+ conduisent à une configuration peu efficace. Chaque requête
+ nécessite une nouvelle recherche DNS. Pour éviter cette surcharge de
+ travail, le système de fichiers peut être organisé pour correspondre
+ aux adresses IP, plutôt qu'aux noms de serveurs, supprimant par
+ la-même la nécessité d'une recherche DNS. La journalisation doit
+ aussi être adaptée pour fonctionner sur un tel système.</p>
+
+<div class="example"><p><code>
+# obtention du nom du serveur par recherche DNS inverse
+# sur l'adresse IP<br />
+UseCanonicalName DNS<br />
+<br />
+# insertion de l'adresse IP dans les journaux afin de pouvoir les
+# éclater<br />
+LogFormat "%A %h %l %u %t \"%r\" %s %b" vcommon<br />
+CustomLog logs/access_log vcommon<br />
+<br />
+# insertion de l'adresse IP dans les noms de fichiers<br />
+VirtualDocumentRootIP /www/hosts/%0/docs<br />
+VirtualScriptAliasIP /www/hosts/%0/cgi-bin<br />
+</code></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="simple.rewrite" id="simple.rewrite">Configuration de base pour un
+hébergement virtuel dynamique utilisant
+<code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code></a></h2>
+
+ <p>Cet extrait de <code>httpd.conf</code> fournit le même service
+ que le <a href="#simple">premier exemple</a>. La première moitié est
+ très similaire à sa contre-partie du <a href="#simple">premier
+ exemple</a>, mis à part quelques changements à des fins de
+ compatibilité ascendante et nécessaires au bon fonctionnement de la
+ partie concernant <code>mod_rewrite</code> ; la seconde moitié
+ configure <code>mod_rewrite</code> pour l'accomplissement du travail
+ proprement dit.</p>
+
+ <p>Cet exemple comporte quelques astuces assez spéciales : par
+ défaut, <code>mod_rewrite</code> effectue son traitement avant les
+ autres modules de transformation d'URI (<code>mod_alias</code>
+ etc...) - ainsi, si vous voulez utiliser ces modules, il faut en
+ tenir compte dans la configuration de <code>mod_rewrite</code>. De
+ même, l'implémentation d'un serveur virtuel dynamique équivalent à
+ <code>ScriptAlias</code> demande une certaine manipulation.</p>
+
+<div class="example"><p><code>
+# obtention du nom du serveur par la valeur de l'en-tête Host:<br />
+UseCanonicalName Off<br />
+<br />
+# journaux pouvant être éclatés en journaux par serveurs virtuels<br />
+LogFormat "%{Host}i %h %l %u %t \"%r\" %s %b" vcommon<br />
+CustomLog logs/access_log vcommon<br />
+<br />
+&lt;Directory /www/hosts&gt;<br />
+<span class="indent">
+ # ExecCGI est ici nécessaire car nous ne pouvons pas forcer
+ # l'exécution des CGI de la manière dont ScriptAlias le fait<br />
+ Options FollowSymLinks ExecCGI<br />
+</span>
+&lt;/Directory&gt;<br />
+<br />
+# et maintenant, nous entrons dans le vif du sujet<br />
+<br />
+RewriteEngine On<br />
+<br />
+# un nom de serveur déduit de l'en-tête Host: dans pratiquement tous les
+# cas<br />
+RewriteMap lowercase int:tolower<br />
+<br />
+## traitement des documents normaux en premier:<br />
+# permet le fonctionnement de "Alias /icons/" - à répéter pour les
+# autres aliases<br />
+RewriteCond %{REQUEST_URI} !^/icons/<br />
+# permet le fonctionnement des CGIs<br />
+RewriteCond %{REQUEST_URI} !^/cgi-bin/<br />
+# la petite manipulation magique<br />
+RewriteRule ^/(.*)$ /www/hosts/${lowercase:%{SERVER_NAME}}/docs/$1<br />
+<br />
+## on s'occupe maintenant des CGIs - on doit imposer l'utilisation d'un
+# gestionnaire<br />
+RewriteCond %{REQUEST_URI} ^/cgi-bin/<br />
+RewriteRule ^/(.*)$ /www/hosts/${lowercase:%{SERVER_NAME}}/cgi-bin/$1 [H=cgi-script]<br />
+<br />
+# c'est tout !
+</code></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="homepages.rewrite" id="homepages.rewrite">Un système de pages d'accueil qui
+utilise<code>mod_rewrite</code></a></h2>
+
+ <p>Il s'agit d'une variante qui permet d'obtenir le même résultat
+ que le <a href="#homepages">deuxième exemple</a>.</p>
+
+<div class="example"><p><code>
+RewriteEngine on<br />
+<br />
+RewriteMap lowercase int:tolower<br />
+<br />
+# permet l'exécution des CGIs<br />
+RewriteCond %{REQUEST_URI} !^/cgi-bin/<br />
+<br />
+# vérifie la validité du nom du serveur pour le bon fonctionnement de la
+# règle RewriteRule<br />
+RewriteCond ${lowercase:%{SERVER_NAME}} ^www\.[a-z-]+\.isp\.com$<br />
+<br />
+# ajoute le nom du serveur virtuel comme préfixe à l'URI<br />
+# le drapeau [C] signifie que la réécriture suivante doit être effectuée
+# sur le résultat de la règle courante<br />
+RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]<br />
+<br />
+# et maintenant, on crée le véritable nom de fichier<br />
+RewriteRule ^www\.([a-z-]+)\.isp\.com/(.*) /home/$1/$2<br />
+<br />
+# définition du répertoire des CGIs global<br />
+ScriptAlias /cgi-bin/ /www/std-cgi/
+</code></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="xtra-conf" id="xtra-conf">Utilisation d'un fichier de configuration
+séparé pour les serveurs virtuels</a></h2>
+
+ <p>Cette méthode utilise des fonctionnalités de
+ <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> plus avancées pour venir à bout de la
+ traduction d'un serveur virtuel en une racine de documents, à partir
+ d'un fichier de configuration séparé. Elle procure d'avantage de
+ souplesse, mais nécessite une configuration
+ un peu plus compliquée.</p>
+
+ <p>Le fichier <code>vhost.map</code> doit se présenter sous cette
+ forme :</p>
+
+<div class="example"><p><code>
+www.customer-1.com /www/customers/1<br />
+www.customer-2.com /www/customers/2<br />
+# ...<br />
+www.customer-N.com /www/customers/N<br />
+</code></p></div>
+
+ <p>Le fichier <code>httpd.conf</code> doit contenir les lignes
+ suivantes :</p>
+
+<div class="example"><p><code>
+RewriteEngine on<br />
+<br />
+RewriteMap lowercase int:tolower<br />
+<br />
+# définition du fichier de correspondances<br />
+RewriteMap vhost txt:/www/conf/vhost.map<br />
+<br />
+# traite les alias comme précédemment<br />
+RewriteCond %{REQUEST_URI} !^/icons/<br />
+RewriteCond %{REQUEST_URI} !^/cgi-bin/<br />
+RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$<br />
+# une nouvelle mise en correspondance par fichier<br />
+RewriteCond ${vhost:%1} ^(/.*)$<br />
+RewriteRule ^/(.*)$ %1/docs/$1<br />
+<br />
+RewriteCond %{REQUEST_URI} ^/cgi-bin/<br />
+RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$<br />
+RewriteCond ${vhost:%1} ^(/.*)$<br />
+RewriteRule ^/(.*)$ %1/cgi-bin/$1 [H=cgi-script]
+</code></p></div>
+
+</div></div>
+<div class="bottomlang">
+<p><span>Langues Disponibles: </span><a href="../en/vhosts/mass.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
+<a href="../fr/vhosts/mass.html" title="Français">&nbsp;fr&nbsp;</a> |
+<a href="../ko/vhosts/mass.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
+<a href="../tr/vhosts/mass.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
+</div><div id="footer">
+<p class="apache">Copyright 2009 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="../faq/">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div>
+</body></html> \ No newline at end of file
diff --git a/docs/manual/vhosts/mass.xml.fr b/docs/manual/vhosts/mass.xml.fr
new file mode 100644
index 0000000000..45ea907ed1
--- /dev/null
+++ b/docs/manual/vhosts/mass.xml.fr
@@ -0,0 +1,443 @@
+<?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 : 659902 -->
+<!-- French translation : Lucien GENTIS -->
+
+<!--
+ 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="mass.xml.meta">
+<parentdocument href="./">H&eacute;bergement virtuel</parentdocument>
+ <title>H&eacute;bergement virtuel de masse configur&eacute; dynamiquement</title>
+
+<summary>
+
+ <p>Ce document propose une m&eacute;thode performante pour servir un nombre
+ quelconque d'h&ocirc;tes virtuels avec le serveur web httpd Apache.
+ </p>
+
+</summary>
+
+<section id="motivation"><title>A qui ce document est-il destin&eacute; ?</title>
+
+ <p>Les techniques d&eacute;crites ici vous concernent si votre
+ <code>httpd.conf</code> contient de nombreuses sections
+ <code>&lt;VirtualHost&gt;</code> tr&egrave;s semblables,
+ dans le style :</p>
+
+<example>
+NameVirtualHost 111.22.33.44<br />
+&lt;VirtualHost 111.22.33.44&gt;<br />
+<indent>
+ ServerName www.customer-1.com<br />
+ DocumentRoot /www/hosts/www.customer-1.com/docs<br />
+ ScriptAlias /cgi-bin/ /www/hosts/www.customer-1.com/cgi-bin<br />
+</indent>
+&lt;/VirtualHost&gt;<br />
+&lt;VirtualHost 111.22.33.44&gt;<br />
+<indent>
+ ServerName www.customer-2.com<br />
+ DocumentRoot /www/hosts/www.customer-2.com/docs<br />
+ ScriptAlias /cgi-bin/ /www/hosts/www.customer-2.com/cgi-bin<br />
+</indent>
+&lt;/VirtualHost&gt;<br />
+# bla bla bla<br />
+&lt;VirtualHost 111.22.33.44&gt;<br />
+<indent>
+ ServerName www.customer-N.com<br />
+ DocumentRoot /www/hosts/www.customer-N.com/docs<br />
+ ScriptAlias /cgi-bin/ /www/hosts/www.customer-N.com/cgi-bin<br />
+</indent>
+&lt;/VirtualHost&gt;
+</example>
+
+ <p>L'id&eacute;e de base consiste &agrave; remplacer toutes les configurations
+ <code>&lt;VirtualHost&gt;</code> par un m&eacute;canisme qui les g&eacute;n&egrave;re
+ dynamiquement. Ceci pr&eacute;sente certains avantages :</p>
+
+ <ol>
+ <li>Votre fichier de configuration est plus petit, ainsi Apache
+ d&eacute;marre plus rapidement et consomme moins de m&eacute;moire.</li>
+
+ <li>Pour ajouter des serveurs virtuels, il suffit de cr&eacute;er les
+ r&eacute;pertoires appropri&eacute;s dans le syst&egrave;me de fichiers et les entr&eacute;es
+ dans le DNS - il n'est plus n&eacute;cessaire de reconfigurer ou de
+ red&eacute;marrer Apache.</li>
+ </ol>
+
+ <p>Le principal d&eacute;savantage r&eacute;side dans le fait que vous ne pouvez
+ pas d&eacute;finir un fichier journal diff&eacute;rent pour chaque serveur
+ virtuel. De toute fa&ccedil;on, ce serait une mauvaise id&eacute;e si vous avez de
+ nombreux serveurs virtuels, car cela n&eacute;cessiterait un nombre
+ important de descripteurs de fichiers. Il est pr&eacute;f&eacute;rable de
+ rediriger les journaux via un pipe ou une pile fifo vers un
+ programme, et faire en sorte que ce dernier distribue les journaux
+ les concernant aux diff&eacute;rents clients (Ce qui peut aussi servir &agrave;
+ accumuler des donn&eacute;es &agrave; des fins de statistiques, etc...).</p>
+
+</section>
+
+<section id="overview"><title>Vue d'ensemble</title>
+
+ <p>Un serveur virtuel peut &ecirc;tre d&eacute;fini par deux informations : son
+ adresse IP, et le contenu de l'en-t&ecirc;te <code>Host:</code> de la
+ requ&ecirc;te HTTP. La technique d'h&eacute;bergement virtuel dynamique de masse
+ utilis&eacute;e ici consiste &agrave; ins&eacute;rer automatiquement ces informations
+ dans le chemin du fichier &agrave; utiliser pour r&eacute;pondre &agrave; la requ&ecirc;te. On
+ peut y parvenir assez facilement en utilisant
+ <module>mod_vhost_alias</module> avec Apache 2.0, mais on peut aussi
+ utiliser <module>mod_rewrite</module>. Par d&eacute;faut, ces deux modules
+ sont d&eacute;sactiv&eacute;s ; vous devez activer l'un d'eux lors de la
+ compilation et de la configuration d'Apache si vous voulez utiliser
+ cette technique.</p>
+
+ <p>Certains param&egrave;tres doivent &ecirc;tre adapt&eacute;s pour que le serveur
+ dynamique se pr&eacute;sente comme un serveur dynamique normal. Le plus
+ important est le nom du serveur, qu'Apache utilise pour g&eacute;n&eacute;rer des
+ URLs d'auto-r&eacute;f&eacute;rencement, etc... Il est d&eacute;fini via la directive
+ <code>ServerName</code>, et les CGIs peuvent s'y r&eacute;f&eacute;rer via la
+ variable d'environnement <code>SERVER_NAME</code>. Sa v&eacute;ritable
+ valeur utilis&eacute;e &agrave; l'ex&eacute;cution est contr&ocirc;l&eacute;e par la d&eacute;finition de la
+ directive
+ <directive module="core">UseCanonicalName</directive>. Avec
+ <code>UseCanonicalName Off</code>, le nom du serveur correspond au
+ contenu de l'en-t&ecirc;te <code>Host:</code> de la requ&ecirc;te. Avec
+ <code>UseCanonicalName DNS</code>, il est extrait d'une recherche
+ DNS inverse sur l'adresse IP du serveur virtuel. La premi&egrave;re
+ configuration est utilis&eacute;e pour l'h&eacute;bergement virtuel dynamique par
+ nom, et la deuxi&egrave;me pour l'h&eacute;bergement virtuel dynamique par IP. Si
+ Apache ne peut pas d&eacute;terminer le nom du serveur, soit parce qu'il
+ n'y a pas d'en-t&ecirc;te <code>Host:</code>, soit parce que la recherche
+ DNS a &eacute;chou&eacute;, il prend en compte la valeur d&eacute;finie par la directive
+ <code>ServerName</code>.</p>
+
+ <p>L'autre param&egrave;tre &agrave; adapter est la racine des documents (d&eacute;finie
+ via la directive <code>DocumentRoot</code> et disponible pour les
+ CGIs via la variable d'environnement <code>DOCUMENT_ROOT</code>).
+ Dans une configuration classique, il est utilis&eacute; par le module core
+ pour faire correspondre les URIs aux noms de fichiers, mais lorsque
+ la configuration du serveur comporte des serveurs virtuels, ce
+ traitement doit &ecirc;tre pris en charge par un autre module (soit
+ <code>mod_vhost_alias</code>, soit <code>mod_rewrite</code>), qui
+ utilise un m&eacute;thode de correspondance diff&eacute;rente. Aucun de ces
+ modules ne se chargeant de d&eacute;finir la variable d'environnement
+ <code>DOCUMENT_ROOT</code>, si des CGIs ou des documents SSI
+ doivent en faire usage, ils obtiendront une valeur erron&eacute;e.</p>
+
+</section>
+
+<section id="simple"><title>M&eacute;thode simple d'h&eacute;bergement virtuel
+dynamique</title>
+
+ <p>Cet extrait de fichier <code>httpd.conf</code> impl&eacute;mente
+ l'h&eacute;bergement virtuel d&eacute;crit dans la section <a
+ href="#motivation">&Agrave; qui ce document est-il destin&eacute; ?</a> ci-dessus,
+ mais selon une m&eacute;thode g&eacute;n&eacute;rique utilisant
+ <code>mod_vhost_alias</code>.</p>
+
+<example>
+# extrait le nom du serveur de l'en-t&ecirc;te Host:<br />
+UseCanonicalName Off<br />
+<br />
+# ce format de journal peut &ecirc;tre &eacute;clat&eacute; en journaux par serveur virtuel
+# &agrave; l'aide du premier champ<br />
+LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br />
+CustomLog logs/access_log vcommon<br />
+<br />
+# inclut le nom du serveur dans les noms de fichiers ressources
+# n&eacute;cessaires aux traitements des requ&ecirc;tes<br />
+VirtualDocumentRoot /www/hosts/%0/docs<br />
+VirtualScriptAlias /www/hosts/%0/cgi-bin
+</example>
+
+ <p>Pour changer cette configuration en solution de serveur virtuel
+ par IP, il suffit de remplacer <code>UseCanonicalName
+ Off</code> par <code>UseCanonicalName DNS</code>. Le nom du serveur
+ ins&eacute;r&eacute; dans le nom de fichier sera alors d&eacute;duit de l'adresse IP du
+ serveur virtuel.</p>
+
+</section>
+
+<section id="homepages"><title>Un syst&egrave;me de pages d'accueil h&eacute;berg&eacute;es
+virtuellement</title>
+
+ <p>Il s'agit d'une adaptation du syst&egrave;me ci-dessus, ajust&eacute; pour un
+ serveur de pages d'accueil de FAI. Avec une configuration un peu
+ plus compliqu&eacute;e, on peut extraire des sous-cha&icirc;nes de caract&egrave;res du
+ nom du serveur pour les utiliser dans le nom de fichier afin, par
+ exemple, de d&eacute;finir <code>/home/user/</code> comme emplacement des
+ documents pour <code>www.user.isp.com</code>. Un seul r&eacute;pertoire
+ <code>cgi-bin</code> suffit pour l'ensemble des
+ serveurs virtuels.</p>
+
+<example>
+# les directives pr&eacute;liminaires sont identiques &agrave; celles de l'exemple
+# ci-dessus ; il vient ensuite :<br />
+<br />
+# insertion d'une partie du nom du serveur dans les noms de fichiers<br />
+VirtualDocumentRoot /www/hosts/%2/docs<br />
+<br />
+# r&eacute;pertoire cgi-bin unique<br />
+ScriptAlias /cgi-bin/ /www/std-cgi/<br />
+</example>
+
+ <p>Vous trouverez des exemples plus &eacute;labor&eacute;s d'utilisation de la
+ directive <code>VirtualDocumentRoot</code> dans la documentation du
+ module <module>mod_vhost_alias</module>.</p>
+
+</section>
+
+<section id="combinations"><title>Utiliser plusieurs syst&egrave;mes
+d'h&eacute;bergement virtuel sur le m&ecirc;me serveur</title>
+
+ <p>Moyennant une configuration un peu plus compliqu&eacute;e, vous pouvez
+ contr&ocirc;ler la port&eacute;e des diff&eacute;rentes configurations d'h&eacute;bergement
+ virtuel &agrave; l'aide des directives <code>&lt;VirtualHost&gt;</code>
+ normales d'Apache. Par exemple, on peut associer une adresse IP pour
+ les pages d'accueil des clients en g&eacute;n&eacute;ral, et une autre pour les
+ clients commerciaux avec la configuration suivante. Cette
+ configuration peut bien entendu &ecirc;tre combin&eacute;e avec les sections
+ <code>&lt;VirtualHost&gt;</code> conventionnelles.</p>
+
+<example>
+UseCanonicalName Off<br />
+<br />
+LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br />
+<br />
+&lt;Directory /www/commercial&gt;<br />
+<indent>
+ Options FollowSymLinks<br />
+ AllowOverride All<br />
+</indent>
+&lt;/Directory&gt;<br />
+<br />
+&lt;Directory /www/homepages&gt;<br />
+<indent>
+ Options FollowSymLinks<br />
+ AllowOverride None<br />
+</indent>
+&lt;/Directory&gt;<br />
+<br />
+&lt;VirtualHost 111.22.33.44&gt;<br />
+<indent>
+ ServerName www.commercial.isp.com<br />
+ <br />
+ CustomLog logs/access_log.commercial vcommon<br />
+ <br />
+ VirtualDocumentRoot /www/commercial/%0/docs<br />
+ VirtualScriptAlias /www/commercial/%0/cgi-bin<br />
+</indent>
+&lt;/VirtualHost&gt;<br />
+<br />
+&lt;VirtualHost 111.22.33.45&gt;<br />
+<indent>
+ ServerName www.homepages.isp.com<br />
+ <br />
+ CustomLog logs/access_log.homepages vcommon<br />
+ <br />
+ VirtualDocumentRoot /www/homepages/%0/docs<br />
+ ScriptAlias /cgi-bin/ /www/std-cgi/<br />
+</indent>
+&lt;/VirtualHost&gt;
+</example>
+
+<note>
+ <title>Note</title>
+ <p>Si le premier bloc VirtualHost ne comporte <em>pas</em> de
+ directive <directive module="core">ServerName</directive>, c'est
+ le nom issu d'une recherche DNS inverse &agrave; partir de l'adresse IP
+ du serveur virtuel qui sera utilis&eacute;. Si ce nom ne correspond pas
+ &agrave; celui que vous voulez utiliser, vous pouvez ajouter une entr&eacute;e
+ de remplacement (<code>ServerName
+ none.example.com</code>) pour &eacute;viter ce comportement.</p>
+</note>
+
+</section>
+
+<section id="ipbased"><title>Pour un h&eacute;bergement virtuel par IP plus
+efficace</title>
+
+ <p>Les changements de configuration sugg&eacute;r&eacute;s pour transformer <a
+ href="#simple">le premier exemple</a> en h&eacute;bergement virtuel par IP
+ conduisent &agrave; une configuration peu efficace. Chaque requ&ecirc;te
+ n&eacute;cessite une nouvelle recherche DNS. Pour &eacute;viter cette surcharge de
+ travail, le syst&egrave;me de fichiers peut &ecirc;tre organis&eacute; pour correspondre
+ aux adresses IP, plut&ocirc;t qu'aux noms de serveurs, supprimant par
+ la-m&ecirc;me la n&eacute;cessit&eacute; d'une recherche DNS. La journalisation doit
+ aussi &ecirc;tre adapt&eacute;e pour fonctionner sur un tel syst&egrave;me.</p>
+
+<example>
+# obtention du nom du serveur par recherche DNS inverse
+# sur l'adresse IP<br />
+UseCanonicalName DNS<br />
+<br />
+# insertion de l'adresse IP dans les journaux afin de pouvoir les
+# &eacute;clater<br />
+LogFormat "%A %h %l %u %t \"%r\" %s %b" vcommon<br />
+CustomLog logs/access_log vcommon<br />
+<br />
+# insertion de l'adresse IP dans les noms de fichiers<br />
+VirtualDocumentRootIP /www/hosts/%0/docs<br />
+VirtualScriptAliasIP /www/hosts/%0/cgi-bin<br />
+</example>
+
+</section>
+
+<section id="simple.rewrite"><title>Configuration de base pour un
+h&eacute;bergement virtuel dynamique utilisant
+<module>mod_rewrite</module></title>
+
+ <p>Cet extrait de <code>httpd.conf</code> fournit le m&ecirc;me service
+ que le <a href="#simple">premier exemple</a>. La premi&egrave;re moiti&eacute; est
+ tr&egrave;s similaire &agrave; sa contre-partie du <a href="#simple">premier
+ exemple</a>, mis &agrave; part quelques changements &agrave; des fins de
+ compatibilit&eacute; ascendante et n&eacute;cessaires au bon fonctionnement de la
+ partie concernant <code>mod_rewrite</code> ; la seconde moiti&eacute;
+ configure <code>mod_rewrite</code> pour l'accomplissement du travail
+ proprement dit.</p>
+
+ <p>Cet exemple comporte quelques astuces assez sp&eacute;ciales : par
+ d&eacute;faut, <code>mod_rewrite</code> effectue son traitement avant les
+ autres modules de transformation d'URI (<code>mod_alias</code>
+ etc...) - ainsi, si vous voulez utiliser ces modules, il faut en
+ tenir compte dans la configuration de <code>mod_rewrite</code>. De
+ m&ecirc;me, l'impl&eacute;mentation d'un serveur virtuel dynamique &eacute;quivalent &agrave;
+ <code>ScriptAlias</code> demande une certaine manipulation.</p>
+
+<example>
+# obtention du nom du serveur par la valeur de l'en-t&ecirc;te Host:<br />
+UseCanonicalName Off<br />
+<br />
+# journaux pouvant &ecirc;tre &eacute;clat&eacute;s en journaux par serveurs virtuels<br />
+LogFormat "%{Host}i %h %l %u %t \"%r\" %s %b" vcommon<br />
+CustomLog logs/access_log vcommon<br />
+<br />
+&lt;Directory /www/hosts&gt;<br />
+<indent>
+ # ExecCGI est ici n&eacute;cessaire car nous ne pouvons pas forcer
+ # l'ex&eacute;cution des CGI de la mani&egrave;re dont ScriptAlias le fait<br />
+ Options FollowSymLinks ExecCGI<br />
+</indent>
+&lt;/Directory&gt;<br />
+<br />
+# et maintenant, nous entrons dans le vif du sujet<br />
+<br />
+RewriteEngine On<br />
+<br />
+# un nom de serveur d&eacute;duit de l'en-t&ecirc;te Host: dans pratiquement tous les
+# cas<br />
+RewriteMap lowercase int:tolower<br />
+<br />
+## traitement des documents normaux en premier:<br />
+# permet le fonctionnement de "Alias /icons/" - &agrave; r&eacute;p&eacute;ter pour les
+# autres aliases<br />
+RewriteCond %{REQUEST_URI} !^/icons/<br />
+# permet le fonctionnement des CGIs<br />
+RewriteCond %{REQUEST_URI} !^/cgi-bin/<br />
+# la petite manipulation magique<br />
+RewriteRule ^/(.*)$ /www/hosts/${lowercase:%{SERVER_NAME}}/docs/$1<br />
+<br />
+## on s'occupe maintenant des CGIs - on doit imposer l'utilisation d'un
+# gestionnaire<br />
+RewriteCond %{REQUEST_URI} ^/cgi-bin/<br />
+RewriteRule ^/(.*)$ /www/hosts/${lowercase:%{SERVER_NAME}}/cgi-bin/$1 [H=cgi-script]<br />
+<br />
+# c'est tout !
+</example>
+
+</section>
+
+<section id="homepages.rewrite"><title>Un syst&egrave;me de pages d'accueil qui
+utilise<code>mod_rewrite</code></title>
+
+ <p>Il s'agit d'une variante qui permet d'obtenir le m&ecirc;me r&eacute;sultat
+ que le <a href="#homepages">deuxi&egrave;me exemple</a>.</p>
+
+<example>
+RewriteEngine on<br />
+<br />
+RewriteMap lowercase int:tolower<br />
+<br />
+# permet l'ex&eacute;cution des CGIs<br />
+RewriteCond %{REQUEST_URI} !^/cgi-bin/<br />
+<br />
+# v&eacute;rifie la validit&eacute; du nom du serveur pour le bon fonctionnement de la
+# r&egrave;gle RewriteRule<br />
+RewriteCond ${lowercase:%{SERVER_NAME}} ^www\.[a-z-]+\.isp\.com$<br />
+<br />
+# ajoute le nom du serveur virtuel comme pr&eacute;fixe &agrave; l'URI<br />
+# le drapeau [C] signifie que la r&eacute;&eacute;criture suivante doit &ecirc;tre effectu&eacute;e
+# sur le r&eacute;sultat de la r&egrave;gle courante<br />
+RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]<br />
+<br />
+# et maintenant, on cr&eacute;e le v&eacute;ritable nom de fichier<br />
+RewriteRule ^www\.([a-z-]+)\.isp\.com/(.*) /home/$1/$2<br />
+<br />
+# d&eacute;finition du r&eacute;pertoire des CGIs global<br />
+ScriptAlias /cgi-bin/ /www/std-cgi/
+</example>
+
+</section>
+
+<section id="xtra-conf"><title>Utilisation d'un fichier de configuration
+s&eacute;par&eacute; pour les serveurs virtuels</title>
+
+ <p>Cette m&eacute;thode utilise des fonctionnalit&eacute;s de
+ <module>mod_rewrite</module> plus avanc&eacute;es pour venir &agrave; bout de la
+ traduction d'un serveur virtuel en une racine de documents, &agrave; partir
+ d'un fichier de configuration s&eacute;par&eacute;. Elle procure d'avantage de
+ souplesse, mais n&eacute;cessite une configuration
+ un peu plus compliqu&eacute;e.</p>
+
+ <p>Le fichier <code>vhost.map</code> doit se pr&eacute;senter sous cette
+ forme :</p>
+
+<example>
+www.customer-1.com /www/customers/1<br />
+www.customer-2.com /www/customers/2<br />
+# ...<br />
+www.customer-N.com /www/customers/N<br />
+</example>
+
+ <p>Le fichier <code>httpd.conf</code> doit contenir les lignes
+ suivantes :</p>
+
+<example>
+RewriteEngine on<br />
+<br />
+RewriteMap lowercase int:tolower<br />
+<br />
+# d&eacute;finition du fichier de correspondances<br />
+RewriteMap vhost txt:/www/conf/vhost.map<br />
+<br />
+# traite les alias comme pr&eacute;c&eacute;demment<br />
+RewriteCond %{REQUEST_URI} !^/icons/<br />
+RewriteCond %{REQUEST_URI} !^/cgi-bin/<br />
+RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$<br />
+# une nouvelle mise en correspondance par fichier<br />
+RewriteCond ${vhost:%1} ^(/.*)$<br />
+RewriteRule ^/(.*)$ %1/docs/$1<br />
+<br />
+RewriteCond %{REQUEST_URI} ^/cgi-bin/<br />
+RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$<br />
+RewriteCond ${vhost:%1} ^(/.*)$<br />
+RewriteRule ^/(.*)$ %1/cgi-bin/$1 [H=cgi-script]
+</example>
+
+</section>
+</manualpage>
diff --git a/docs/manual/vhosts/mass.xml.meta b/docs/manual/vhosts/mass.xml.meta
index b958727153..0acc529f4c 100644
--- a/docs/manual/vhosts/mass.xml.meta
+++ b/docs/manual/vhosts/mass.xml.meta
@@ -8,6 +8,7 @@
<variants>
<variant>en</variant>
+ <variant>fr</variant>
<variant outdated="yes">ko</variant>
<variant>tr</variant>
</variants>
diff --git a/docs/manual/vhosts/name-based.html.fr b/docs/manual/vhosts/name-based.html.fr
index 4a943d03ee..dd248b7b4a 100644
--- a/docs/manual/vhosts/name-based.html.fr
+++ b/docs/manual/vhosts/name-based.html.fr
@@ -26,7 +26,7 @@
<a href="../tr/vhosts/name-based.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div>
- <p>Ce document décrit quand et comment utiliser des serveurs
+ <p>Ce document décrit quand et comment utiliser des serveurs
virtuels par nom.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#namevip">Serveurs virtuels par nom vs. par IP</a></li>
@@ -37,43 +37,43 @@
<div class="section">
<h2><a name="namevip" id="namevip">Serveurs virtuels par nom vs. par IP</a></h2>
- <p>Les hébergements virtuels par IP utilisent l'adresse IP
- de la connexion afin de déterminer quel serveur virtuel doit
- répondre. Par conséquent, vous devez disposer d'adresses IP
- différentes pour chaque nom de domaine complet (FQDN) que vous hébergez.
- Avec un hébergement
- virtuel par nom, le serveur s'appuit sur les informations
- transmises par le client dans les en-têtes HTTP de ses requêtes.
- La technique présentée ici vous permet de disposer de serveurs
+ <p>Les hébergements virtuels par IP utilisent l'adresse IP
+ de la connexion afin de déterminer quel serveur virtuel doit
+ répondre. Par conséquent, vous devez disposer d'adresses IP
+ différentes pour chaque serveur.
+ Avec un hébergement
+ virtuel par nom, le serveur s'appuit sur les informations
+ transmises par le client dans les en-têtes HTTP de ses requêtes.
+ La technique présentée ici vous permet de disposer de serveurs
virtuels différents partagés sur une même adresse IP.</p>
- <p>L'hébergement virtuel par nom est habituellement plus simple,
- car il vous suffit de configurer votre serveur DNS pour que
- chaque domaine pointe sur l'adresse IP dont vous disposez, et de
- configurer votre serveur Apache HTTP afin qu'il reconnaisse
- ces domaines. Il réduit aussi la pénurie en adresses IP. Par
- conséquent, vous devriez utiliser l'hébergement virtuel par
- nom à moins d'avoir une raison spécifique de préférer
- l'hébergement virtuel par IP. Certaines de ces raisons vous
+ <p>L'hébergement virtuel par nom est habituellement plus simple,
+ car il vous suffit de configurer votre serveur DNS pour que
+ chaque domaine pointe sur l'adresse IP dont vous disposez, et de
+ configurer votre serveur Apache HTTP afin qu'il reconnaisse
+ ces domaines. Il réduit aussi la pénurie en adresses IP. Par
+ conséquent, vous devriez utiliser l'hébergement virtuel par
+ nom à moins d'avoir une raison spécifique de préférer
+ l'hébergement virtuel par IP. Certaines de ces raisons vous
sont exposées ci-après&nbsp;:</p>
<ul>
- <li>Certains anciens navigateurs ne sont pas compatibles
- avec les serveurs virtuels par nom, car pour fonctionner,
- un client doit transmettre un champ d'en-tête HTTP Host.
- Cet en-tête est exigé pour HTTP/1.1, et peut être implémenté
- sur des navigateurs modernes HTTP/1.0 grâce à une extension.
- Si vous devez maintenir des clients obsolètes tout en
- utilisant l'hébergement virtuel par nom, il existe une
+ <li>Certains anciens navigateurs ne sont pas compatibles
+ avec les serveurs virtuels par nom, car pour fonctionner,
+ un client doit transmettre un champ d'en-tête HTTP Host.
+ Cet en-tête est exigé pour HTTP/1.1, et peut être implémenté
+ sur des navigateurs modernes HTTP/1.0 grâce à une extension.
+ Si vous devez maintenir des clients obsolètes tout en
+ utilisant l'hébergement virtuel par nom, il existe une
technique qui est traitée à la fin de ce document.</li>
- <li>L'hébergement virtuel par nom ne peut pas être utilisé
- avec des serveurs sécurisés SSL à cause de la nature même
+ <li>L'hébergement virtuel par nom ne peut pas être utilisé
+ avec des serveurs sécurisés SSL à cause de la nature même
du protocole SSL.</li>
- <li>Certains systèmes d'exploitation et équipements réseaux
- emploient des techniques de gestion de la bande passante
- qui ne peuvent pas différencier des domaines autrement que
+ <li>Certains systèmes d'exploitation et équipements réseaux
+ emploient des techniques de gestion de la bande passante
+ qui ne peuvent pas différencier des domaines autrement que
par des adresses IP séparées.</li>
</ul>
@@ -83,57 +83,58 @@
<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></ul></td><td><ul><li><code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code></li><li><code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code></li><li><code class="directive"><a href="../mod/core.html#serveralias">ServerAlias</a></code></li><li><code class="directive"><a href="../mod/core.html#servername">ServerName</a></code></li><li><code class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code></li><li><code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code></li></ul></td></tr></table>
- <p>Pour utiliser des serveurs virtuels par nom, vous devez
- désigner l'adresse IP (et si possible le port) sur le serveur
- devant accepter les requêtes pour des domaines. Cette
- configuration utilise la directive
- <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>. Dans un
- cas normal où n'importe quelle adresse IP peut être utilisée,
- vous pouvez ajouter <code>*</code> comme argument de la directive
- <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>. Si vous
- prévoyez d'utiliser de multiples ports (comme l'emploi de SSL),
- vous devriez ajouter le port à cet argument tel que
- <code>*:80</code>. Notez que la simple mention d'une adresse
- IP dans une directive
- <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code> ne suffit
- pas à faire écouter le serveur sur cette IP. Consultez
- <a href="../bind.html">la page sur les liaisons</a> pour plus
- de détails. Par ailleurs, chaque adresse IP spécifiée ici doit
+ <p>Pour utiliser des serveurs virtuels par nom, vous devez
+ désigner l'adresse IP (et si possible le port) sur le serveur
+ devant accepter les requêtes pour des domaines. Cette
+ configuration utilise la directive
+ <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>. Dans un
+ cas normal où n'importe quelle adresse IP peut être utilisée,
+ vous pouvez ajouter <code>*</code> comme argument de la directive
+ <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>. Si vous
+ prévoyez d'utiliser de multiples ports (comme l'emploi de SSL),
+ vous devriez ajouter le port à cet argument tel que
+ <code>*:80</code>. Notez que la simple mention d'une adresse
+ IP dans une directive
+ <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code> ne suffit
+ pas à faire écouter le serveur sur cette IP. Consultez
+ <a href="../bind.html">Définition des adresses et ports qu'utilise
+ Apache</a> pour plus
+ de détails. Par ailleurs, chaque adresse IP spécifiée ici doit
être associée avec une interface réseau sur le serveur.</p>
- <p>L'étape suivante est la création d'une section
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
- pour chacun des serveurs à créer. L'argument de la directive
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
- doit correspondre à celui d'une directive
- <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>
- (dans la plupart des cas, il s'agit de "*:80"). Dans chaque section
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>,
- vous devez définir au minimum une directive
- <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> pour désigner
- le serveur concerné et une directive
- <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> pour préciser
+ <p>L'étape suivante est la création d'une section
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
+ pour chacun des serveurs à créer. L'argument de la directive
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
+ doit être le même que celui de la directive
+ <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>
+ (dans le cas présent "*:80"). Dans chaque section
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>,
+ vous devez définir au minimum une directive
+ <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> pour désigner
+ le serveur concerné et une directive
+ <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> pour préciser
l'emplacement sur le système de fichiers du contenu de ce serveur.</p>
<div class="note"><h3>Le serveur principal disparaît</h3>
- <p>Si vous ajoutez des serveurs virtuels à un serveur Web
- existant, vous devez également créer une section
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
- redéfinissant ce serveur existant. Les directives
- <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> et
- <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> incluses
- dans ce serveur virtuel doivent être les mêmes que pour
- les directives globales
- <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> et
- <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>. Positionnez
- ce serveur virtuel en premier dans le fichier de configuration
+ <p>Si vous ajoutez des serveurs virtuels à un serveur Web
+ existant, vous devez également créer une section
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
+ redéfinissant ce serveur existant. Les directives
+ <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> et
+ <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> incluses
+ dans ce serveur virtuel doivent être les mêmes que pour
+ les directives globales
+ <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> et
+ <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>. Positionnez
+ ce serveur virtuel en premier dans le fichier de configuration
pour en faire le serveur par défaut.</p>
</div>
- <p>Par exemple, supposez que vous hébergez le domaine
- <code>www.domain.tld</code> et que vous souhaitez ajouter le
- serveur virtuel <code>www.otherdomain.tld</code> qui pointe sur
- la même adresse IP. Il vous suffit d'ajouter la configuration
+ <p>Par exemple, supposez que vous hébergez le domaine
+ <code>www.domain.tld</code> et que vous souhaitez ajouter le
+ serveur virtuel <code>www.otherdomain.tld</code> qui pointe sur
+ la même adresse IP. Il vous suffit d'ajouter la configuration
suivante à <code>httpd.conf</code>&nbsp;:</p>
<div class="example"><p><code>
@@ -154,98 +155,98 @@
&lt;/VirtualHost&gt;<br />
</code></p></div>
- <p>Autrement, vous pouvez spécifiez une adresse IP explicite
- à la place de <code>*</code> dans les deux directives
- <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code> et
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>.
- Par exemple, cette méthode est utile si vous souhaitez faire
- tourner quelques serveurs virtuels par nom sur une même adresse
- IP, et d'autres, soit par IP, soit basés sur un autre jeu de
+ <p>Autrement, vous pouvez spécifiez une adresse IP explicite
+ à la place de <code>*</code> dans les deux directives
+ <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code> et
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>.
+ Par exemple, cette méthode est utile si vous souhaitez faire
+ tourner quelques serveurs virtuels par nom sur une même adresse
+ IP, et d'autres, soit par IP, soit basés sur un autre jeu de
serveurs virtuels par nom sur une autre adresse IP.</p>
- <p>Plusieurs serveurs sont accessibles par plus d'un nom. Il
- suffit de placer la directive
- <code class="directive"><a href="../mod/core.html#serveralias">ServerAlias</a></code> dans une section
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>.
- Par exemple, dans la première section
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
- ci-dessus, la directive <code class="directive"><a href="../mod/core.html#serveralias">ServerAlias</a></code>
- indique aux utilisateurs les autres noms permis pour accéder au
+ <p>Plusieurs serveurs sont accessibles par plus d'un nom. Il
+ suffit de placer la directive
+ <code class="directive"><a href="../mod/core.html#serveralias">ServerAlias</a></code> dans une section
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>.
+ Par exemple, dans la première section
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
+ ci-dessus, la directive <code class="directive"><a href="../mod/core.html#serveralias">ServerAlias</a></code>
+ indique aux utilisateurs les autres noms permis pour accéder au
même site Web&nbsp;:</p>
<div class="example"><p><code>
ServerAlias domain.tld *.domain.tld
</code></p></div>
- <p>ainsi, toutes les requêtes portant sur un domaine
- <code>domain.tld</code> seront servies par le serveur virtuel
- <code>www.domain.tld</code>. Les caractères joker <code>*</code>
- et <code>?</code> peuvent être utilisés pour les correspondances.
- Bien entendu, vous ne pouvez pas inventer des noms et les placer
- dans une directive <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>
- ou <code>ServerAlias</code>. Tout d'abord, votre serveur DNS
- doit être correctement configuré pour lier ces noms à une
+ <p>ainsi, toutes les requêtes portant sur un domaine
+ <code>domain.tld</code> seront servies par le serveur virtuel
+ <code>www.domain.tld</code>. Les caractères joker <code>*</code>
+ et <code>?</code> peuvent être utilisés pour les correspondances.
+ Bien entendu, vous ne pouvez pas inventer des noms et les placer
+ dans une directive <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>
+ ou <code>ServerAlias</code>. Tout d'abord, votre serveur DNS
+ doit être correctement configuré pour lier ces noms à une
adresse IP associée avec votre serveur.</p>
- <p>Finalement, vous pouvez affiner la configuration des serveurs
- virtuels en plaçant d'autres directives à l'intérieur des sections
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>.
- La plupart des directives peut être placée dans ces sections en
- y changeant seulement la configuration du serveur virtuel associé.
- Pour déterminer si une directive particulière est permise,
- consultez <a href="../mod/directive-dict.html#Context">la page de
- contexte</a>. Le jeu de directives configurées dans le contexte
- du <em>serveur principal</em> (en dehors de toutes sections
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>)
- sera utilisé seulement s'il n'y a pas de configuration contraire
+ <p>Finalement, vous pouvez affiner la configuration des serveurs
+ virtuels en plaçant d'autres directives à l'intérieur des sections
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>.
+ La plupart des directives peut être placée dans ces sections en
+ y changeant seulement la configuration du serveur virtuel associé.
+ Pour déterminer si une directive particulière est permise,
+ consultez le <a href="../mod/directive-dict.html#Context">contexte</a> de la
+ directive. Le jeu de directives configurées dans le contexte
+ du <em>serveur principal</em> (en dehors de toutes sections
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>)
+ sera utilisé seulement s'il n'y a pas de configuration contraire
par un serveur virtuel.</p>
- <p>Maintenant, lorsqu'une requête arrive, le serveur va d'abord
- tester si elle utilise une adresse IP qui correspond à
- <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>. Si c'est
- le cas, il regardera chaque section
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
- avec l'adresse correspondante et essaiera d'en trouver une où
- le nom de domaine requis correspond à
- <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> ou
- <code>ServerAlias</code>. S'il en trouve une, il utilisera
- sa configuration pour le serveur. Si aucun serveur virtuel ne
- correspond, alors <em>le premier serveur virtuel listé</em>
+ <p>Maintenant, lorsqu'une requête arrive, le serveur va d'abord
+ tester si elle utilise une adresse IP qui correspond à
+ <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>. Si c'est
+ le cas, il regardera chaque section
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
+ avec l'adresse correspondante et essaiera d'en trouver une où
+ le nom de domaine requis correspond à
+ <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> ou
+ <code>ServerAlias</code>. S'il en trouve une, il utilisera
+ sa configuration pour le serveur. Si aucun serveur virtuel ne
+ correspond, alors <em>le premier serveur virtuel listé</em>
dont l'adresse IP correspond sera employé.</p>
- <p>En conséquence, le premier serveur virtuel listé est le
- serveur virtuel <em>default</em>. La directive
- <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> du
- <em>serveur principal</em> <strong>ne</strong> sera
- <strong>jamais</strong> employée lorsqu'une adresse IP
- correspond dans une directive
- <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>. Si vous
- ne voulez pas avoir de configuration spéciale pour les requêtes
- qui ne sont pas attachées à un serveur virtuel en particulier,
- mettez cette configuration dans une section
- <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
+ <p>En conséquence, le premier serveur virtuel listé est le
+ serveur virtuel <em>par défaut</em>. La directive
+ <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code> du
+ <em>serveur principal</em> <strong>ne</strong> sera
+ <strong>jamais</strong> employée lorsqu'une adresse IP
+ correspond à la directive
+ <code class="directive"><a href="../mod/core.html#namevirtualhost">NameVirtualHost</a></code>. Si vous
+ souhaiter avoir une configuration spéciale pour les requêtes
+ qui ne correspondent pas à un serveur virtuel en particulier,
+ mettez cette configuration dans une section
+ <code class="directive"><a href="../mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>
que vous placerez en premier dans le fichier de configuration.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="compat" id="compat">Compatibilité avec les navigateurs anciens</a></h2>
- <p>Comme mentionné plus tôt, certains clients ne transmettent
- pas les données nécessaires pour le bon fonctionnement des
- serveurs virtuels. Ces clients recevront toujours les pages
- du premier serveur virtuel listé pour cette adresse IP (le
+ <p>Comme mentionné plus tôt, certains clients ne transmettent
+ pas les données nécessaires pour le bon fonctionnement des
+ serveurs virtuels par nom. Ces clients recevront toujours les pages
+ du premier serveur virtuel listé pour cette adresse IP (le
serveur virtuel par nom <cite>primaire</cite>).</p>
<div class="note"><h3>De combien plus anciens&nbsp;?</h3>
- <p>Veuillez noter que quand nous disons plus anciens, nous
- disons vraiment plus anciens. Vous seriez malchanceux de rencontrer
- de tels navigateurs encore utilisés de nos jours. Toutes les
- versions actuelles des navigateurs transmettent leur en-tête
+ <p>Veuillez noter que quand nous disons plus anciens, nous
+ disons vraiment plus anciens. Vous avez peu de chances de rencontrer
+ de tels navigateurs encore utilisés de nos jours. Toutes les
+ versions actuelles des navigateurs transmettent leur en-tête
<code>Host</code> comme exigé par les serveurs virtuels par nom.</p>
</div>
- <p>Il existe une solution avec la directive
- <code class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code>, bien que
+ <p>Il existe une solution avec la directive
+ <code class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code>, bien que
légèrement complexe&nbsp;:</p>
<p>Exemple de configuration&nbsp;:</p>
@@ -262,27 +263,27 @@
&lt;/VirtualHost&gt;<br />
</code></p></div>
- <p>Qu'est-ce que cela signifie&nbsp;? Il signifie qu'une requête
- pour tout URI qui commence par "<code>/domain</code>" sera
- servie par le serveur virtuel <code>www.domain.tld</code>.
- Ainsi, les pages sont accessibles à
- <code>http://www.domain.tld/domain/</code> pour tous les
- clients, bien que ceux qui transmettent un en-tête
- <code>Host:</code> peuvent également y accéder à
+ <p>Qu'est-ce que cela signifie&nbsp;? Il signifie qu'une requête
+ pour tout URI qui commence par "<code>/domain</code>" sera
+ servie par le serveur virtuel <code>www.domain.tld</code>.
+ Ainsi, les pages sont accessibles à
+ <code>http://www.domain.tld/domain/</code> pour tous les
+ clients, bien que ceux qui transmettent un en-tête
+ <code>Host:</code> peuvent également y accéder à
<code>http://www.domain.tld/</code>.</p>
- <p>Pour rendre cette technique fonctionnelle, mettez un lien
- dans votre serveur virtuel primaire vers
- <code>http://www.domain.tld/domain/</code>. Ensuite, dans les
- pages de ce serveur virtuel, assurez vous ne n'utiliser que
- des liens relatifs (<em>par exemple</em>, "<code>file.html</code>"
- ou "<code>../icons/image.gif</code>") ou des liens contenant
- le préfixe <code>/domain/</code> (<em>par exemple</em>,
- "<code>http://www.domain.tld/domain/misc/file.html</code>"
+ <p>Pour rendre cette technique fonctionnelle, mettez un lien
+ dans votre serveur virtuel primaire vers
+ <code>http://www.domain.tld/domain/</code>. Ensuite, dans les
+ pages de ce serveur virtuel, assurez vous ne n'utiliser que
+ des liens relatifs (<em>par exemple</em>, "<code>file.html</code>"
+ ou "<code>../icons/image.gif</code>") ou des liens contenant
+ le préfixe <code>/domain/</code> (<em>par exemple</em>,
+ "<code>http://www.domain.tld/domain/misc/file.html</code>"
ou "<code>/domain/misc/file.html</code>").</p>
- <p>Cela requiert un peu de discipline, mais si vous suivez
- cette ligne de conduite, vous serez assuré que vos pages
+ <p>Cela requiert un peu de discipline, mais si vous suivez
+ cette ligne de conduite, vous serez assuré que vos pages
s'afficheront dans tous les navigateurs, nouveaux et anciens.</p>
</div></div>
diff --git a/docs/manual/vhosts/name-based.xml.fr b/docs/manual/vhosts/name-based.xml.fr
index 64c10acf26..399fb39480 100644
--- a/docs/manual/vhosts/name-based.xml.fr
+++ b/docs/manual/vhosts/name-based.xml.fr
@@ -1,8 +1,9 @@
<?xml version='1.0' encoding='ISO-8859-1' ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
-<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 659902 -->
-<!-- French translation by alain B, review by Vincent Deffontaines -->
+<!-- French translation by alain B, review by Vincent Deffontaines
+ updated by Lucien GENTIS -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
@@ -26,7 +27,7 @@
<title>Support Apache des serveurs virtuels par nom</title>
<summary>
- <p>Ce document décrit quand et comment utiliser des serveurs
+ <p>Ce document décrit quand et comment utiliser des serveurs
virtuels par nom.</p>
</summary>
@@ -38,43 +39,43 @@
<section id="namevip"><title>Serveurs virtuels par nom vs. par IP</title>
- <p>Les hébergements virtuels par IP utilisent l'adresse IP
- de la connexion afin de déterminer quel serveur virtuel doit
- répondre. Par conséquent, vous devez disposer d'adresses IP
- différentes pour chaque nom de domaine complet (FQDN) que vous hébergez.
- Avec un hébergement
- virtuel par nom, le serveur s'appuit sur les informations
- transmises par le client dans les en-têtes HTTP de ses requêtes.
- La technique présentée ici vous permet de disposer de serveurs
+ <p>Les hébergements virtuels par IP utilisent l'adresse IP
+ de la connexion afin de déterminer quel serveur virtuel doit
+ répondre. Par conséquent, vous devez disposer d'adresses IP
+ différentes pour chaque serveur.
+ Avec un hébergement
+ virtuel par nom, le serveur s'appuit sur les informations
+ transmises par le client dans les en-têtes HTTP de ses requêtes.
+ La technique présentée ici vous permet de disposer de serveurs
virtuels différents partagés sur une même adresse IP.</p>
- <p>L'hébergement virtuel par nom est habituellement plus simple,
- car il vous suffit de configurer votre serveur DNS pour que
- chaque domaine pointe sur l'adresse IP dont vous disposez, et de
- configurer votre serveur Apache HTTP afin qu'il reconnaisse
- ces domaines. Il réduit aussi la pénurie en adresses IP. Par
- conséquent, vous devriez utiliser l'hébergement virtuel par
- nom à moins d'avoir une raison spécifique de préférer
- l'hébergement virtuel par IP. Certaines de ces raisons vous
+ <p>L'hébergement virtuel par nom est habituellement plus simple,
+ car il vous suffit de configurer votre serveur DNS pour que
+ chaque domaine pointe sur l'adresse IP dont vous disposez, et de
+ configurer votre serveur Apache HTTP afin qu'il reconnaisse
+ ces domaines. Il réduit aussi la pénurie en adresses IP. Par
+ conséquent, vous devriez utiliser l'hébergement virtuel par
+ nom à moins d'avoir une raison spécifique de préférer
+ l'hébergement virtuel par IP. Certaines de ces raisons vous
sont exposées ci-après&nbsp;:</p>
<ul>
- <li>Certains anciens navigateurs ne sont pas compatibles
- avec les serveurs virtuels par nom, car pour fonctionner,
- un client doit transmettre un champ d'en-tête HTTP Host.
- Cet en-tête est exigé pour HTTP/1.1, et peut être implémenté
- sur des navigateurs modernes HTTP/1.0 grâce à une extension.
- Si vous devez maintenir des clients obsolètes tout en
- utilisant l'hébergement virtuel par nom, il existe une
+ <li>Certains anciens navigateurs ne sont pas compatibles
+ avec les serveurs virtuels par nom, car pour fonctionner,
+ un client doit transmettre un champ d'en-tête HTTP Host.
+ Cet en-tête est exigé pour HTTP/1.1, et peut être implémenté
+ sur des navigateurs modernes HTTP/1.0 grâce à une extension.
+ Si vous devez maintenir des clients obsolètes tout en
+ utilisant l'hébergement virtuel par nom, il existe une
technique qui est traitée à la fin de ce document.</li>
- <li>L'hébergement virtuel par nom ne peut pas être utilisé
- avec des serveurs sécurisés SSL à cause de la nature même
+ <li>L'hébergement virtuel par nom ne peut pas être utilisé
+ avec des serveurs sécurisés SSL à cause de la nature même
du protocole SSL.</li>
- <li>Certains systèmes d'exploitation et équipements réseaux
- emploient des techniques de gestion de la bande passante
- qui ne peuvent pas différencier des domaines autrement que
+ <li>Certains systèmes d'exploitation et équipements réseaux
+ emploient des techniques de gestion de la bande passante
+ qui ne peuvent pas différencier des domaines autrement que
par des adresses IP séparées.</li>
</ul>
@@ -97,57 +98,58 @@
</directivelist>
</related>
- <p>Pour utiliser des serveurs virtuels par nom, vous devez
- désigner l'adresse IP (et si possible le port) sur le serveur
- devant accepter les requêtes pour des domaines. Cette
- configuration utilise la directive
- <directive module="core">NameVirtualHost</directive>. Dans un
- cas normal où n'importe quelle adresse IP peut être utilisée,
- vous pouvez ajouter <code>*</code> comme argument de la directive
- <directive module="core">NameVirtualHost</directive>. Si vous
- prévoyez d'utiliser de multiples ports (comme l'emploi de SSL),
- vous devriez ajouter le port à cet argument tel que
- <code>*:80</code>. Notez que la simple mention d'une adresse
- IP dans une directive
- <directive module="core">NameVirtualHost</directive> ne suffit
- pas à faire écouter le serveur sur cette IP. Consultez
- <a href="../bind.html">la page sur les liaisons</a> pour plus
- de détails. Par ailleurs, chaque adresse IP spécifiée ici doit
+ <p>Pour utiliser des serveurs virtuels par nom, vous devez
+ désigner l'adresse IP (et si possible le port) sur le serveur
+ devant accepter les requêtes pour des domaines. Cette
+ configuration utilise la directive
+ <directive module="core">NameVirtualHost</directive>. Dans un
+ cas normal où n'importe quelle adresse IP peut être utilisée,
+ vous pouvez ajouter <code>*</code> comme argument de la directive
+ <directive module="core">NameVirtualHost</directive>. Si vous
+ prévoyez d'utiliser de multiples ports (comme l'emploi de SSL),
+ vous devriez ajouter le port à cet argument tel que
+ <code>*:80</code>. Notez que la simple mention d'une adresse
+ IP dans une directive
+ <directive module="core">NameVirtualHost</directive> ne suffit
+ pas à faire écouter le serveur sur cette IP. Consultez
+ <a href="../bind.html">Définition des adresses et ports qu'utilise
+ Apache</a> pour plus
+ de détails. Par ailleurs, chaque adresse IP spécifiée ici doit
être associée avec une interface réseau sur le serveur.</p>
- <p>L'étape suivante est la création d'une section
- <directive type="section" module="core">VirtualHost</directive>
- pour chacun des serveurs à créer. L'argument de la directive
- <directive type="section" module="core">VirtualHost</directive>
- doit correspondre à celui d'une directive
- <directive module="core">NameVirtualHost</directive>
- (dans la plupart des cas, il s'agit de "*:80"). Dans chaque section
- <directive type="section" module="core">VirtualHost</directive>,
- vous devez définir au minimum une directive
- <directive module="core">ServerName</directive> pour désigner
- le serveur concerné et une directive
- <directive module="core">DocumentRoot</directive> pour préciser
+ <p>L'étape suivante est la création d'une section
+ <directive type="section" module="core">VirtualHost</directive>
+ pour chacun des serveurs à créer. L'argument de la directive
+ <directive type="section" module="core">VirtualHost</directive>
+ doit être le même que celui de la directive
+ <directive module="core">NameVirtualHost</directive>
+ (dans le cas présent "*:80"). Dans chaque section
+ <directive type="section" module="core">VirtualHost</directive>,
+ vous devez définir au minimum une directive
+ <directive module="core">ServerName</directive> pour désigner
+ le serveur concerné et une directive
+ <directive module="core">DocumentRoot</directive> pour préciser
l'emplacement sur le système de fichiers du contenu de ce serveur.</p>
<note><title>Le serveur principal disparaît</title>
- <p>Si vous ajoutez des serveurs virtuels à un serveur Web
- existant, vous devez également créer une section
- <directive type="section" module="core">VirtualHost</directive>
- redéfinissant ce serveur existant. Les directives
- <directive module="core">ServerName</directive> et
- <directive module="core">DocumentRoot</directive> incluses
- dans ce serveur virtuel doivent être les mêmes que pour
- les directives globales
- <directive module="core">ServerName</directive> et
- <directive module="core">DocumentRoot</directive>. Positionnez
- ce serveur virtuel en premier dans le fichier de configuration
+ <p>Si vous ajoutez des serveurs virtuels à un serveur Web
+ existant, vous devez également créer une section
+ <directive type="section" module="core">VirtualHost</directive>
+ redéfinissant ce serveur existant. Les directives
+ <directive module="core">ServerName</directive> et
+ <directive module="core">DocumentRoot</directive> incluses
+ dans ce serveur virtuel doivent être les mêmes que pour
+ les directives globales
+ <directive module="core">ServerName</directive> et
+ <directive module="core">DocumentRoot</directive>. Positionnez
+ ce serveur virtuel en premier dans le fichier de configuration
pour en faire le serveur par défaut.</p>
</note>
- <p>Par exemple, supposez que vous hébergez le domaine
- <code>www.domain.tld</code> et que vous souhaitez ajouter le
- serveur virtuel <code>www.otherdomain.tld</code> qui pointe sur
- la même adresse IP. Il vous suffit d'ajouter la configuration
+ <p>Par exemple, supposez que vous hébergez le domaine
+ <code>www.domain.tld</code> et que vous souhaitez ajouter le
+ serveur virtuel <code>www.otherdomain.tld</code> qui pointe sur
+ la même adresse IP. Il vous suffit d'ajouter la configuration
suivante à <code>httpd.conf</code>&nbsp;:</p>
<example>
@@ -168,98 +170,99 @@
&lt;/VirtualHost&gt;<br />
</example>
- <p>Autrement, vous pouvez spécifiez une adresse IP explicite
- à la place de <code>*</code> dans les deux directives
- <directive module="core" >NameVirtualHost</directive> et
- <directive type="section" module="core" >VirtualHost</directive>.
- Par exemple, cette méthode est utile si vous souhaitez faire
- tourner quelques serveurs virtuels par nom sur une même adresse
- IP, et d'autres, soit par IP, soit basés sur un autre jeu de
+ <p>Autrement, vous pouvez spécifiez une adresse IP explicite
+ à la place de <code>*</code> dans les deux directives
+ <directive module="core" >NameVirtualHost</directive> et
+ <directive type="section" module="core" >VirtualHost</directive>.
+ Par exemple, cette méthode est utile si vous souhaitez faire
+ tourner quelques serveurs virtuels par nom sur une même adresse
+ IP, et d'autres, soit par IP, soit basés sur un autre jeu de
serveurs virtuels par nom sur une autre adresse IP.</p>
- <p>Plusieurs serveurs sont accessibles par plus d'un nom. Il
- suffit de placer la directive
- <directive module="core">ServerAlias</directive> dans une section
- <directive type="section" module="core">VirtualHost</directive>.
- Par exemple, dans la première section
- <directive type="section" module="core">VirtualHost</directive>
- ci-dessus, la directive <directive module="core">ServerAlias</directive>
- indique aux utilisateurs les autres noms permis pour accéder au
+ <p>Plusieurs serveurs sont accessibles par plus d'un nom. Il
+ suffit de placer la directive
+ <directive module="core">ServerAlias</directive> dans une section
+ <directive type="section" module="core">VirtualHost</directive>.
+ Par exemple, dans la première section
+ <directive type="section" module="core">VirtualHost</directive>
+ ci-dessus, la directive <directive module="core">ServerAlias</directive>
+ indique aux utilisateurs les autres noms permis pour accéder au
même site Web&nbsp;:</p>
<example>
ServerAlias domain.tld *.domain.tld
</example>
- <p>ainsi, toutes les requêtes portant sur un domaine
- <code>domain.tld</code> seront servies par le serveur virtuel
- <code>www.domain.tld</code>. Les caractères joker <code>*</code>
- et <code>?</code> peuvent être utilisés pour les correspondances.
- Bien entendu, vous ne pouvez pas inventer des noms et les placer
- dans une directive <directive module="core">ServerName</directive>
- ou <code>ServerAlias</code>. Tout d'abord, votre serveur DNS
- doit être correctement configuré pour lier ces noms à une
+ <p>ainsi, toutes les requêtes portant sur un domaine
+ <code>domain.tld</code> seront servies par le serveur virtuel
+ <code>www.domain.tld</code>. Les caractères joker <code>*</code>
+ et <code>?</code> peuvent être utilisés pour les correspondances.
+ Bien entendu, vous ne pouvez pas inventer des noms et les placer
+ dans une directive <directive module="core">ServerName</directive>
+ ou <code>ServerAlias</code>. Tout d'abord, votre serveur DNS
+ doit être correctement configuré pour lier ces noms à une
adresse IP associée avec votre serveur.</p>
- <p>Finalement, vous pouvez affiner la configuration des serveurs
- virtuels en plaçant d'autres directives à l'intérieur des sections
- <directive type="section" module="core">VirtualHost</directive>.
- La plupart des directives peut être placée dans ces sections en
- y changeant seulement la configuration du serveur virtuel associé.
- Pour déterminer si une directive particulière est permise,
- consultez <a href="../mod/directive-dict.html#Context">la page de
- contexte</a>. Le jeu de directives configurées dans le contexte
- du <em>serveur principal</em> (en dehors de toutes sections
- <directive type="section" module="core">VirtualHost</directive>)
- sera utilisé seulement s'il n'y a pas de configuration contraire
+ <p>Finalement, vous pouvez affiner la configuration des serveurs
+ virtuels en plaçant d'autres directives à l'intérieur des sections
+ <directive type="section" module="core">VirtualHost</directive>.
+ La plupart des directives peut être placée dans ces sections en
+ y changeant seulement la configuration du serveur virtuel associé.
+ Pour déterminer si une directive particulière est permise,
+ consultez le <a
+ href="../mod/directive-dict.html#Context">contexte</a> de la
+ directive. Le jeu de directives configurées dans le contexte
+ du <em>serveur principal</em> (en dehors de toutes sections
+ <directive type="section" module="core">VirtualHost</directive>)
+ sera utilisé seulement s'il n'y a pas de configuration contraire
par un serveur virtuel.</p>
- <p>Maintenant, lorsqu'une requête arrive, le serveur va d'abord
- tester si elle utilise une adresse IP qui correspond à
- <directive module="core" >NameVirtualHost</directive>. Si c'est
- le cas, il regardera chaque section
- <directive type="section" module="core">VirtualHost</directive>
- avec l'adresse correspondante et essaiera d'en trouver une où
- le nom de domaine requis correspond à
- <directive module="core">ServerName</directive> ou
- <code>ServerAlias</code>. S'il en trouve une, il utilisera
- sa configuration pour le serveur. Si aucun serveur virtuel ne
- correspond, alors <em>le premier serveur virtuel listé</em>
+ <p>Maintenant, lorsqu'une requête arrive, le serveur va d'abord
+ tester si elle utilise une adresse IP qui correspond à
+ <directive module="core" >NameVirtualHost</directive>. Si c'est
+ le cas, il regardera chaque section
+ <directive type="section" module="core">VirtualHost</directive>
+ avec l'adresse correspondante et essaiera d'en trouver une où
+ le nom de domaine requis correspond à
+ <directive module="core">ServerName</directive> ou
+ <code>ServerAlias</code>. S'il en trouve une, il utilisera
+ sa configuration pour le serveur. Si aucun serveur virtuel ne
+ correspond, alors <em>le premier serveur virtuel listé</em>
dont l'adresse IP correspond sera employé.</p>
- <p>En conséquence, le premier serveur virtuel listé est le
- serveur virtuel <em>default</em>. La directive
- <directive module="core">DocumentRoot</directive> du
- <em>serveur principal</em> <strong>ne</strong> sera
- <strong>jamais</strong> employée lorsqu'une adresse IP
- correspond dans une directive
- <directive module="core">NameVirtualHost</directive>. Si vous
- ne voulez pas avoir de configuration spéciale pour les requêtes
- qui ne sont pas attachées à un serveur virtuel en particulier,
- mettez cette configuration dans une section
- <directive type="section" module="core">VirtualHost</directive>
+ <p>En conséquence, le premier serveur virtuel listé est le
+ serveur virtuel <em>par défaut</em>. La directive
+ <directive module="core">DocumentRoot</directive> du
+ <em>serveur principal</em> <strong>ne</strong> sera
+ <strong>jamais</strong> employée lorsqu'une adresse IP
+ correspond à la directive
+ <directive module="core">NameVirtualHost</directive>. Si vous
+ souhaiter avoir une configuration spéciale pour les requêtes
+ qui ne correspondent pas à un serveur virtuel en particulier,
+ mettez cette configuration dans une section
+ <directive type="section" module="core">VirtualHost</directive>
que vous placerez en premier dans le fichier de configuration.</p>
</section>
<section id="compat"><title>Compatibilité avec les navigateurs anciens</title>
- <p>Comme mentionné plus tôt, certains clients ne transmettent
- pas les données nécessaires pour le bon fonctionnement des
- serveurs virtuels. Ces clients recevront toujours les pages
- du premier serveur virtuel listé pour cette adresse IP (le
+ <p>Comme mentionné plus tôt, certains clients ne transmettent
+ pas les données nécessaires pour le bon fonctionnement des
+ serveurs virtuels par nom. Ces clients recevront toujours les pages
+ du premier serveur virtuel listé pour cette adresse IP (le
serveur virtuel par nom <cite>primaire</cite>).</p>
<note><title>De combien plus anciens&nbsp;?</title>
- <p>Veuillez noter que quand nous disons plus anciens, nous
- disons vraiment plus anciens. Vous seriez malchanceux de rencontrer
- de tels navigateurs encore utilisés de nos jours. Toutes les
- versions actuelles des navigateurs transmettent leur en-tête
+ <p>Veuillez noter que quand nous disons plus anciens, nous
+ disons vraiment plus anciens. Vous avez peu de chances de rencontrer
+ de tels navigateurs encore utilisés de nos jours. Toutes les
+ versions actuelles des navigateurs transmettent leur en-tête
<code>Host</code> comme exigé par les serveurs virtuels par nom.</p>
</note>
- <p>Il existe une solution avec la directive
- <directive module="core">ServerPath</directive>, bien que
+ <p>Il existe une solution avec la directive
+ <directive module="core">ServerPath</directive>, bien que
légèrement complexe&nbsp;:</p>
<p>Exemple de configuration&nbsp;:</p>
@@ -276,27 +279,27 @@
&lt;/VirtualHost&gt;<br />
</example>
- <p>Qu'est-ce que cela signifie&nbsp;? Il signifie qu'une requête
- pour tout URI qui commence par "<code>/domain</code>" sera
- servie par le serveur virtuel <code>www.domain.tld</code>.
- Ainsi, les pages sont accessibles à
- <code>http://www.domain.tld/domain/</code> pour tous les
- clients, bien que ceux qui transmettent un en-tête
- <code>Host:</code> peuvent également y accéder à
+ <p>Qu'est-ce que cela signifie&nbsp;? Il signifie qu'une requête
+ pour tout URI qui commence par "<code>/domain</code>" sera
+ servie par le serveur virtuel <code>www.domain.tld</code>.
+ Ainsi, les pages sont accessibles à
+ <code>http://www.domain.tld/domain/</code> pour tous les
+ clients, bien que ceux qui transmettent un en-tête
+ <code>Host:</code> peuvent également y accéder à
<code>http://www.domain.tld/</code>.</p>
- <p>Pour rendre cette technique fonctionnelle, mettez un lien
- dans votre serveur virtuel primaire vers
- <code>http://www.domain.tld/domain/</code>. Ensuite, dans les
- pages de ce serveur virtuel, assurez vous ne n'utiliser que
- des liens relatifs (<em>par exemple</em>, "<code>file.html</code>"
- ou "<code>../icons/image.gif</code>") ou des liens contenant
- le préfixe <code>/domain/</code> (<em>par exemple</em>,
- "<code>http://www.domain.tld/domain/misc/file.html</code>"
+ <p>Pour rendre cette technique fonctionnelle, mettez un lien
+ dans votre serveur virtuel primaire vers
+ <code>http://www.domain.tld/domain/</code>. Ensuite, dans les
+ pages de ce serveur virtuel, assurez vous ne n'utiliser que
+ des liens relatifs (<em>par exemple</em>, "<code>file.html</code>"
+ ou "<code>../icons/image.gif</code>") ou des liens contenant
+ le préfixe <code>/domain/</code> (<em>par exemple</em>,
+ "<code>http://www.domain.tld/domain/misc/file.html</code>"
ou "<code>/domain/misc/file.html</code>").</p>
- <p>Cela requiert un peu de discipline, mais si vous suivez
- cette ligne de conduite, vous serez assuré que vos pages
+ <p>Cela requiert un peu de discipline, mais si vous suivez
+ cette ligne de conduite, vous serez assuré que vos pages
s'afficheront dans tous les navigateurs, nouveaux et anciens.</p>
</section>