use consistent encoding between xml.fr files (utf-8)

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1771654 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
André Malo
2016-11-27 22:04:17 +00:00
parent 3b55c2df4e
commit 3bdce8069a
34 changed files with 514 additions and 514 deletions

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- English Revision: 1673947 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- English Revision: 1673652 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision : 1044378 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- English Revision : 1690343 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1721975 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1673932 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision : 1544626 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- English Revision : 1561569 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- English revision : 1561569 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1719571 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1673945 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1673945 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision : 1328159 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English revision : 1200006 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1682923 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English revision : 1655141 -->

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->

View File

@ -1,4 +1,4 @@
<?xml version='1.0' encoding='ISO-8859-1' ?>
<?xml version='1.0' ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1673947 -->
@ -24,110 +24,110 @@
<manualpage metafile="details.xml.meta">
<parentdocument href="./">Serveurs virtuels</parentdocument>
<title>D<EFBFBD>tails sur le fonctionnement des serveurs virtuels</title>
<title>Détails sur le fonctionnement des serveurs virtuels</title>
<summary>
<p>Ce document vise <EFBFBD> expliquer dans le d<EFBFBD>tail comment le serveur
HTTP Apache proc<EFBFBD>de lors du choix de l'utilisation
d'un serveur virtuel en fonction d'une requ<EFBFBD>te re<EFBFBD>ue.</p>
<p>Ce document vise à expliquer dans le détail comment le serveur
HTTP Apache procède lors du choix de l'utilisation
d'un serveur virtuel en fonction d'une requête reçue.</p>
<p>Il est recommand<EFBFBD> de lire la documentation<a href="name-based.html#namevip">
Serveurs virtuels <EFBFBD> base de nom et serveurs virtuels <EFBFBD> base
d'adresse IP</a> pour d<EFBFBD>terminer quel type de serveur virtuel nous
<p>Il est recommandé de lire la documentation<a href="name-based.html#namevip">
Serveurs virtuels à base de nom et serveurs virtuels à base
d'adresse IP</a> pour déterminer quel type de serveur virtuel nous
convient le mieux, puis de lire les documentations <a
href="name-based.html">serveurs virtuels <EFBFBD> base de nom</a> ou <a
href="ip-based.html">serveurs virtuels <EFBFBD> base d'adresse IP</a>, et enfin
d'<EFBFBD>tudier <a href="examples.html">quelques exemples</a>.</p>
href="name-based.html">serveurs virtuels à base de nom</a> ou <a
href="ip-based.html">serveurs virtuels à base d'adresse IP</a>, et enfin
d'étudier <a href="examples.html">quelques exemples</a>.</p>
<p>Si vous voulez entrer dans les d<EFBFBD>tails, vous pouvez revenir vers
<p>Si vous voulez entrer dans les détails, vous pouvez revenir vers
cette page.</p>
</summary>
<seealso><a href="ip-based.html">Support des serveurs virtuels <EFBFBD> base
<seealso><a href="ip-based.html">Support des serveurs virtuels à base
d'adresse IP</a></seealso>
<seealso><a href="name-based.html">Support des serveurs virtuels <EFBFBD> base
<seealso><a href="name-based.html">Support des serveurs virtuels à base
de nom</a></seealso>
<seealso><a href="examples.html">Exemples de serveurs virtuels pour une
configuration courante</a></seealso>
<seealso><a href="mass.html">H<EFBFBD>bergement virtuel de masse configur<EFBFBD>
<seealso><a href="mass.html">Hébergement virtuel de masse configuré
dynamiquement</a></seealso>
<section id="configparsing"><title>Fichier de configuration</title>
<p>Un <em>serveur principal (main_server)</em> contient toutes
les d<EFBFBD>finitions qui apparaissent en dehors des sections
les définitions qui apparaissent en dehors des sections
<code>&lt;VirtualHost&gt;</code>.</p>
<p>Les serveurs virtuels, aussi
appel<EFBFBD>s <em>vhosts</em> (pour virtual hosts), sont d<EFBFBD>finis par les
appelés <em>vhosts</em> (pour virtual hosts), sont définis par les
sections <directive type="section" module="core">VirtualHost</directive>.</p>
<p>Chaque directive <code>VirtualHost</code> comporte une ou
plusieurs adresses et des ports optionnels.</p>
<p>Il est possible d'utiliser des noms d'h<EFBFBD>tes dans la d<EFBFBD>finition
d'un serveur virtuel, mais ils seront r<EFBFBD>solus en adresses IP au
d<EFBFBD>marrage du serveur, et si une r<EFBFBD>solution de nom <EFBFBD>choue, cette
d<EFBFBD>finition de serveur virtuel sera ignor<EFBFBD>e. Cette m<EFBFBD>thode est par
cons<EFBFBD>quent d<EFBFBD>conseill<EFBFBD>e.</p>
<p>Il est possible d'utiliser des noms d'hôtes dans la définition
d'un serveur virtuel, mais ils seront résolus en adresses IP au
démarrage du serveur, et si une résolution de nom échoue, cette
définition de serveur virtuel sera ignorée. Cette méthode est par
conséquent déconseillée.</p>
<p>L'adresse peut
<EFBFBD>tre sp<EFBFBD>cifi<EFBFBD>e sous la forme <code>*</code>, ce qui conviendra <EFBFBD> la
requ<EFBFBD>te si aucun autre serveur virtuel ne poss<EFBFBD>de l'adresse IP
explicite correspondant <EFBFBD> celle de la requ<EFBFBD>te.</p>
être spécifiée sous la forme <code>*</code>, ce qui conviendra à la
requête si aucun autre serveur virtuel ne possède l'adresse IP
explicite correspondant à celle de la requête.</p>
<p>L'adresse qui appara<EFBFBD>t dans la directive <code>VirtualHost</code>
peut <EFBFBD>tre associ<EFBFBD>e <EFBFBD> un port optionnel. Si aucun port n'est
sp<EFBFBD>cifi<EFBFBD>, il s'agit d'un port g<EFBFBD>n<EFBFBD>rique qui peut aussi <EFBFBD>tre sp<EFBFBD>cifi<EFBFBD>
comme <code>*</code>. Le port g<EFBFBD>n<EFBFBD>rique correspond <EFBFBD> toutes les
<p>L'adresse qui apparaît dans la directive <code>VirtualHost</code>
peut être associée à un port optionnel. Si aucun port n'est
spécifié, il s'agit d'un port générique qui peut aussi être spécifié
comme <code>*</code>. Le port générique correspond à toutes les
valeurs de port.</p>
<p>(Il ne faut pas confondre les num<EFBFBD>ros de port sur lesquels Apache
est en <EFBFBD>coute avec les num<EFBFBD>ros de port sp<EFBFBD>cifi<EFBFBD>s dans la directive
<code>VirtualHost</code> ; ces derniers ne servent qu'<EFBFBD> d<EFBFBD>finir le
<code>serveur virtuel</code> qui sera s<EFBFBD>lectionn<EFBFBD> pour traiter la
requ<EFBFBD>te. Pour d<EFBFBD>finir les ports sur lesquels Apache est en <EFBFBD>coute,
<p>(Il ne faut pas confondre les numéros de port sur lesquels Apache
est en écoute avec les numéros de port spécifiés dans la directive
<code>VirtualHost</code> ; ces derniers ne servent qu'à définir le
<code>serveur virtuel</code> qui sera sélectionné pour traiter la
requête. Pour définir les ports sur lesquels Apache est en écoute,
utilisez la directive <directive module="mpm_common">Listen</directive>).
</p>
<p>L'ensemble des adresses (y compris les r<EFBFBD>sultats multiples
<code>A</code> issus des requ<EFBFBD>tes DNS) est appel<EFBFBD> <em>jeu
<p>L'ensemble des adresses (y compris les résultats multiples
<code>A</code> issus des requêtes DNS) est appelé <em>jeu
d'adresses</em> du serveur virtuel.</p>
<p>Apache fait automatiquement sa s<EFBFBD>lection <EFBFBD> partir de l'en-t<EFBFBD>te
<p>Apache fait automatiquement sa sélection à partir de l'en-tête
HTTP <code>Host</code> fourni par le client, lorsque la
correspondance la plus exacte du point de vue adresse IP/port a lieu
pour plusieurs serveurs virtuels.</p>
<p>La directive <directive module="core">ServerName</directive> peut
appara<EFBFBD>tre en quelque endroit de la d<EFBFBD>finition d'un serveur.
Cependant, chaque occurrence <EFBFBD>crase la pr<EFBFBD>c<EFBFBD>dente (pour ce serveur).
Si aucune directive <code>ServerName</code> n'est sp<EFBFBD>cifi<EFBFBD>e, le
serveur tente de d<EFBFBD>terminer le nom du serveur <EFBFBD> partir de l'adresse
apparaître en quelque endroit de la définition d'un serveur.
Cependant, chaque occurrence écrase la précédente (pour ce serveur).
Si aucune directive <code>ServerName</code> n'est spécifiée, le
serveur tente de déterminer le nom du serveur à partir de l'adresse
IP.</p>
<p>Le premier serveur virtuel <EFBFBD> base de nom apparaissant dans le
fichier de configuration pour une paire IP:port donn<EFBFBD>e est
significatif car c'est lui qui sera utilis<EFBFBD> pour toutes les requ<EFBFBD>tes
re<EFBFBD>ues sur cette adresse IP/port et pour laquelle aucun autre
serveur virtuel ne poss<EFBFBD>de un ServerName ou un ServerAlias
correspondant. Il sera aussi utilis<EFBFBD> pour toutes les connexions SSL
<p>Le premier serveur virtuel à base de nom apparaissant dans le
fichier de configuration pour une paire IP:port donnée est
significatif car c'est lui qui sera utilisé pour toutes les requêtes
reçues sur cette adresse IP/port et pour laquelle aucun autre
serveur virtuel ne possède un ServerName ou un ServerAlias
correspondant. Il sera aussi utilisé pour toutes les connexions SSL
si le serveur ne supporte pas l'<glossary
ref="servernameindication">Indication du nom du serveur</glossary>.</p>
<p>Tous les noms sp<EFBFBD>cifi<EFBFBD>s au sein d'une section
<code>VirtualHost</code> sont trait<EFBFBD>s comme un
<code>ServerAlias</code> (sans caract<EFBFBD>res g<EFBFBD>n<EFBFBD>riques), mais ne sont
<EFBFBD>cras<EFBFBD>s par aucune directive <code>ServerAlias</code>.</p>
<p>Tous les noms spécifiés au sein d'une section
<code>VirtualHost</code> sont traités comme un
<code>ServerAlias</code> (sans caractères génériques), mais ne sont
écrasés par aucune directive <code>ServerAlias</code>.</p>
<p>Pour chaque serveur virtuel, diverses valeurs sont initialis<EFBFBD>es
par d<EFBFBD>faut. En particulier&nbsp;:</p>
<p>Pour chaque serveur virtuel, diverses valeurs sont initialisées
par défaut. En particulier&nbsp;:</p>
<ol>
<li>Dans le cas o<EFBFBD> un serveur virtuel ne contient pas de directives
<li>Dans le cas où un serveur virtuel ne contient pas de directives
<directive module="core">ServerAdmin</directive>,
<directive module="core">Timeout</directive>,
<directive module="core">KeepAliveTimeout</directive>,
@ -135,187 +135,187 @@ dynamiquement</a></seealso>
<directive module="core">MaxKeepAliveRequests</directive>,
<directive module="mpm_common">ReceiveBufferSize</directive>,
ou <directive module="mpm_common">SendBufferSize</directive>,
alors la valeur de chacun de ces param<EFBFBD>tres est h<EFBFBD>rit<EFBFBD>e de celle du
serveur principal. (C'est <EFBFBD> dire, h<EFBFBD>rit<EFBFBD>e de la valeur finale apr<EFBFBD>s
alors la valeur de chacun de ces paramètres est héritée de celle du
serveur principal. (C'est à dire, héritée de la valeur finale après
lecture de la configuration du serveur principal.)</li>
<li>Les permissions par d<EFBFBD>faut sur les r<EFBFBD>pertoires de chaque
serveur virtuel sont assembl<EFBFBD>es avec celles du serveur principal.
Elles concernent <EFBFBD>galement toutes les informations de configuration
par r<EFBFBD>pertoire pour tous les modules.</li>
<li>Les permissions par défaut sur les répertoires de chaque
serveur virtuel sont assemblées avec celles du serveur principal.
Elles concernent également toutes les informations de configuration
par répertoire pour tous les modules.</li>
<li>Les configurations par serveur pour chaque module sont assembl<EFBFBD>es
<EFBFBD> partir de celles du serveur principal.</li>
<li>Les configurations par serveur pour chaque module sont assemblées
à partir de celles du serveur principal.</li>
</ol>
<p>L'essentiel des valeurs de configuration des serveurs virtuels
provient de valeurs par d<EFBFBD>faut issues du serveur principal.
provient de valeurs par défaut issues du serveur principal.
Mais la position dans le fichier de configuration des directives
du serveur principal n'a pas d'importance -- l'ensemble de la
configuration du serveur principal est lu avant que ces valeurs par
d<EFBFBD>faut soient appliqu<EFBFBD>es aux serveur virtuels. Ainsi, m<EFBFBD>me si la
d<EFBFBD>finition d'une valeur appara<EFBFBD>t apr<EFBFBD>s celle d'un serveur virtuel,
défaut soient appliquées aux serveur virtuels. Ainsi, même si la
définition d'une valeur apparaît après celle d'un serveur virtuel,
cette valeur peut affecter la definition du serveur virtuel.</p>
<p>Dans le cas o<EFBFBD> le serveur principal n'a pas de <code>ServerName</code>
<EFBFBD> ce stade, le nom de la machine sur laquelle tourne le programme
<program>httpd</program> est utilis<EFBFBD> <20> sa place. Nous appellerons
<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
renvoy<EFBFBD>es par une r<EFBFBD>solution DNS sur le <code>ServerName</code>
renvoyées par une résolution DNS sur le <code>ServerName</code>
du serveur principal.</p>
<p>Pour tous les champs <code>ServerName</code> non d<EFBFBD>finis, dans
<p>Pour tous les champs <code>ServerName</code> non définis, dans
le cas d'une configuration en serveur virtuel par nom, la valeur
adopt<EFBFBD>e par d<EFBFBD>faut est la premi<EFBFBD>re adresse donn<EFBFBD>e dans la section
<code>VirtualHost</code> qui d<EFBFBD>finit le serveur virtuel.</p>
adoptée par défaut est la première adresse donnée dans la section
<code>VirtualHost</code> qui définit le serveur virtuel.</p>
<p>Si un serveur virtuel contient la valeur magique
<code>_default_</code>, il fonctionne sur le m<EFBFBD>me <code>ServerName</code>
<code>_default_</code>, il fonctionne sur le même <code>ServerName</code>
que le serveur principal.</p>
</section>
<section id="hostmatching"><title>Choix du serveur virtuel</title>
<p><EFBFBD> la r<EFBFBD>ception d'une requ<EFBFBD>te, le serveur proc<EFBFBD>de comme suit pour
d<EFBFBD>terminer quel serveur virtuel utiliser&nbsp;:</p>
<p>À la réception d'une requête, le serveur procède comme suit pour
déterminer quel serveur virtuel utiliser&nbsp;:</p>
<section id="hashtable"><title>Recherche de l'adresse IP</title>
<p>Lors d'une premi<EFBFBD>re connexion sur une adresse/port, le serveur
<p>Lors d'une première connexion sur une adresse/port, le serveur
recherche toutes les directives <code>VirtualHost</code> qui
poss<EFBFBD>dent la m<EFBFBD>me adresse IP/port.</p>
possèdent la même adresse IP/port.</p>
<p>S'il n'y a aucune correspondance exacte pour cette adresse/port,
la recherche s'effectue sur la valeur g<EFBFBD>n<EFBFBD>rique (<code>*</code>).</p>
la recherche s'effectue sur la valeur générique (<code>*</code>).</p>
<p>Si aucune correspondance n'est enfin trouv<EFBFBD>e, la requ<EFBFBD>te sera
<p>Si aucune correspondance n'est enfin trouvée, la requête sera
servie par le serveur principal.</p>
<p>S'il existe des d<EFBFBD>finitions <code>VirtualHost</code> pour
l'adresse IP, l'<EFBFBD>tape suivante consiste <EFBFBD> d<EFBFBD>terminer si nous avons <EFBFBD>
faire <EFBFBD> un serveur virtuel <EFBFBD> base de nom ou d'adresse IP.</p>
<p>S'il existe des définitions <code>VirtualHost</code> pour
l'adresse IP, l'étape suivante consiste à déterminer si nous avons à
faire à un serveur virtuel à base de nom ou d'adresse IP.</p>
</section>
<section id="ipbased"><title>Serveur virtuel par IP</title>
<p>Si une seule section <code>VirtualHost</code> pr<EFBFBD>sente la
<p>Si une seule section <code>VirtualHost</code> présente la
meilleure correspondance avec la paire adresse IP/port, aucune
action n'est entreprise et la requ<EFBFBD>te est
trait<EFBFBD>e par le serveur virtuel qui correspond.</p>
action n'est entreprise et la requête est
traitée par le serveur virtuel qui correspond.</p>
</section>
<section id="namebased"><title>Serveur virtuel par nom</title>
<p>Si plusieurs sections <code>VirtualHost</code> pr<EFBFBD>sentent la
<p>Si plusieurs sections <code>VirtualHost</code> présentent la
meilleure correspondance avec la paire adresse IP/port, le terme
"liste" dans les <EFBFBD>tapes suivantes fait r<EFBFBD>f<EFBFBD>rence <EFBFBD> la liste des
"liste" dans les étapes suivantes fait référence à la liste des
serveurs virtuels qui correspondent, selon l'ordre dans lequel ils
apparaissent dans le fichier de configuration.</p>
<p>Si la connexion utilise SSL, si le serveur supporte l'<glossary
ref="servernameindication">Indication de nom de serveur</glossary>,
et si la n<EFBFBD>gociation du client SSL inclut l'extension TLS dans le
nom d'h<EFBFBD>te requis, alors ce nom d'h<EFBFBD>te sera utilis<EFBFBD> par la suite, tout
comme un en-t<EFBFBD>te <code>Host:</code> aurait <EFBFBD>t<EFBFBD> utilis<EFBFBD> dans le cas
d'une connexion non-SSL. Si ces conditions ne sont pas r<EFBFBD>unies, le
premier serveur virtuel <EFBFBD> base de nom dont l'adresse correspond sera
utilis<EFBFBD> pour les connexions SSL. Ceci est important car c'est le
serveur virtuel qui d<EFBFBD>termine quel certificat le serveur va utiliser
et si la négociation du client SSL inclut l'extension TLS dans le
nom d'hôte requis, alors ce nom d'hôte sera utilisé par la suite, tout
comme un en-tête <code>Host:</code> aurait été utilisé dans le cas
d'une connexion non-SSL. Si ces conditions ne sont pas réunies, le
premier serveur virtuel à base de nom dont l'adresse correspond sera
utilisé pour les connexions SSL. Ceci est important car c'est le
serveur virtuel qui détermine quel certificat le serveur va utiliser
pour la connexion.</p>
<p>Si la requ<EFBFBD>te contient un en-t<EFBFBD>te <code>Host:</code>, on
<p>Si la requête contient un en-tête <code>Host:</code>, on
recherche dans la liste le premier serveur virtuel dont le
<code>ServerName</code> ou le <code>ServerAlias</code> correspond,
et c'est celui-ci qui va traiter la requ<EFBFBD>te. Un en-t<EFBFBD>te
<code>Host:</code> peut comporter un num<EFBFBD>ro de port mais Apache
l'ignore syst<EFBFBD>matiquement et utilise toujours le
port sur lequel il a effectivement re<EFBFBD>u la requ<EFBFBD>te.</p>
et c'est celui-ci qui va traiter la requête. Un en-tête
<code>Host:</code> peut comporter un numéro de port mais Apache
l'ignore systématiquement et utilise toujours le
port sur lequel il a effectivement reçu la requête.</p>
<p>Le premier serveur virtuel du fichier de configuration qui
poss<EFBFBD>de l'adresse sp<EFBFBD>cifi<EFBFBD>e est prioritaire et intercepte toutes les
requ<EFBFBD>tes <EFBFBD> destination d'un nom de serveur inconnu, ou toute requ<EFBFBD>te
sans en-t<EFBFBD>te <code>Host:</code> (comme les requ<EFBFBD>tes HTTP/1.0).</p>
possède l'adresse spécifiée est prioritaire et intercepte toutes les
requêtes à destination d'un nom de serveur inconnu, ou toute requête
sans en-tête <code>Host:</code> (comme les requêtes HTTP/1.0).</p>
</section>
<section id="persistent"><title>Connexions persistantes</title>
<p>La <em>recherche par adresse IP</em> d<EFBFBD>crite ci-avant n'est faite
<p>La <em>recherche par adresse IP</em> décrite ci-avant n'est faite
qu'<em>une fois</em> pour chaque session TCP/IP, alors que la
<em>recherche par nom</em> est r<EFBFBD>alis<EFBFBD>e pour <em>chaque</em> requ<EFBFBD>te au
<em>recherche par nom</em> est réalisée pour <em>chaque</em> requête au
cours d'une connexion persistante (KeepAlive). En d'autres termes,
il est possible pour un client de faire des requ<EFBFBD>tes sur
diff<EFBFBD>rents serveurs virtuels par nom, au cours d'une unique
il est possible pour un client de faire des requêtes sur
différents serveurs virtuels par nom, au cours d'une unique
connexion persistante.</p>
</section>
<section id="absoluteURI"><title>URI absolu</title>
<p>Au cas o<EFBFBD> l'URI de la requ<EFBFBD>te est absolu, et que son nom de
<p>Au cas où l'URI de la requête est absolu, et que son nom de
serveur et son port correspondent au serveur principal (ou l'un
des serveurs virtuels configur<EFBFBD>s), <em>et</em> qu'ils correspondent
<EFBFBD> l'adresse et au port de la requ<EFBFBD>te, alors l'URI est amput<EFBFBD>
de son pr<EFBFBD>fixe protocole/nom de serveur/port et trait<EFBFBD> par le
des serveurs virtuels configurés), <em>et</em> qu'ils correspondent
à l'adresse et au port de la requête, alors l'URI est amputé
de son préfixe protocole/nom de serveur/port et traité par le
serveur correspondant (principal ou virtuel). Si cette correspondance
n'existe pas, l'URI reste inchang<EFBFBD> et la requ<EFBFBD>te est consid<EFBFBD>r<EFBFBD>e
comme une requ<EFBFBD>te d'un serveur mandataire (proxy).</p>
n'existe pas, l'URI reste inchangé et la requête est considérée
comme une requête d'un serveur mandataire (proxy).</p>
</section>
<section id="observations"><title>Observations</title>
<ul>
<li>La s<EFBFBD>lection d'un serveur virtuel en fonction de son nom est
un processus qui intervient apr<EFBFBD>s la s<EFBFBD>lection par le serveur du
<li>La sélection d'un serveur virtuel en fonction de son nom est
un processus qui intervient après la sélection par le serveur du
serveur virtuel qui correspond le mieux du point de vue adresse
IP/port.</li>
<li>Si vous ne tenez pas compte de l'adresse IP <EFBFBD> laquelle le
client s'est connect<EFBFBD>, indiquez un caract<EFBFBD>re "*" comme adresse
pour tous les serveurs virtuels, et la s<EFBFBD>lection du serveur
virtuel en fonction du nom s'appliquera alors <EFBFBD> tous les serveurs
virtuels d<EFBFBD>finis.</li>
<li>Si vous ne tenez pas compte de l'adresse IP à laquelle le
client s'est connecté, indiquez un caractère "*" comme adresse
pour tous les serveurs virtuels, et la sélection du serveur
virtuel en fonction du nom s'appliquera alors à tous les serveurs
virtuels définis.</li>
<li>Les v<EFBFBD>rifications sur <code>ServerName</code> et
<li>Les vérifications sur <code>ServerName</code> et
<code>ServerAlias</code> ne sont jamais
r<EFBFBD>alis<EFBFBD>es pour les serveurs virtuels par IP.</li>
réalisées pour les serveurs virtuels par IP.</li>
<li>Seul l'ordre des serveurs virtuels par nom
pour une adresse donn<EFBFBD>e a une importance. Le serveur virtuel
par nom qui est pr<EFBFBD>sent en premier dans la configuration se
voit attribu<EFBFBD> la priorit<EFBFBD> la plus haute pour les requ<EFBFBD>tes
pour une adresse donnée a une importance. Le serveur virtuel
par nom qui est présent en premier dans la configuration se
voit attribué la priorité la plus haute pour les requêtes
arrivant sur son jeu d'adresses IP.</li>
<li>Le num<EFBFBD>ro de port contenu dans l'en-t<EFBFBD>te <code>Host:</code> n'est jamais utilis<EFBFBD>
<li>Le numéro de port contenu dans l'en-tête <code>Host:</code> n'est jamais utilisé
pour les tests de correspondances. Apache ne prend en compte
que le num<EFBFBD>ro de port sur lequel le client a envoy<EFBFBD> la requ<EFBFBD>te.</li>
que le numéro de port sur lequel le client a envoyé la requête.</li>
<li>Si deux serveurs virtuels partagent la m<EFBFBD>me adresse, la
s<EFBFBD>lection se fera implicitement sur le nom. Il s'agit d'une
nouvelle fonctionnalit<EFBFBD> de la version 2.3.11.</li>
<li>Si deux serveurs virtuels partagent la même adresse, la
sélection se fera implicitement sur le nom. Il s'agit d'une
nouvelle fonctionnalité de la version 2.3.11.</li>
<li>Le serveur principal ne sert les requ<EFBFBD>tes que
lorsque l'adresse IP et le port demand<EFBFBD>s par le client ne
correspondent <EFBFBD> aucun serveur virtuel (y compris un serveur
<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>*</code>). En d'autres termes, le serveur
principal n'est utile que pour les combinaisons adresse/port
non sp<EFBFBD>cifi<EFBFBD>es (sauf quand un serveur virtuel <code>_default_</code>
non spécifiées (sauf quand un serveur virtuel <code>_default_</code>
correspond au port).</li>
<li>Il ne faut jamais employer de noms DNS dans des directives
<code>VirtualHost</code>, car cela oblige le serveur a s'appuyer
sur le DNS au moment du d<EFBFBD>marrage. De plus, vous vous exposez
<EFBFBD> des probl<EFBFBD>mes de s<EFBFBD>curit<EFBFBD> si vous n'avez pas la ma<EFBFBD>trise du
DNS pour la totalit<EFBFBD> de vos domaines. Voir la documentation
sur le DNS au moment du démarrage. De plus, vous vous exposez
à des problèmes de sécurité si vous n'avez pas la maîtrise du
DNS pour la totalité de vos domaines. Voir la documentation
<a href="../dns-caveats.html">disponible ici</a>, ainsi que
les deux points pr<EFBFBD>cis<EFBFBD>s ci-apr<EFBFBD>s.</li>
les deux points précisés ci-après.</li>
<li>Un nom de serveur <code>ServerName</code> devrait toujours
<EFBFBD>tre indiqu<EFBFBD> pour chaque serveur virtuel. Sans cela, une
r<EFBFBD>solution DNS est n<EFBFBD>cessaire pour chaque serveur virtuel.</li>
être indiqué pour chaque serveur virtuel. Sans cela, une
résolution DNS est nécessaire pour chaque serveur virtuel.</li>
</ul>
</section>
@ -323,17 +323,17 @@ dynamiquement</a></seealso>
<section id="tips"><title>Trucs et astuces</title>
<p>En plus des points <EFBFBD>voqu<EFBFBD>s sur la page des
<a href="../dns-caveats.html#tips">probl<EFBFBD>mes li<EFBFBD>s au DNS</a>,
voici quelques points int<EFBFBD>ressants&nbsp;:</p>
<p>En plus des points évoqués sur la page des
<a href="../dns-caveats.html#tips">problèmes liés au DNS</a>,
voici quelques points intéressants&nbsp;:</p>
<ul>
<li>Toujours positionner les d<EFBFBD>finitions relatives au serveur
principal avant toute d<EFBFBD>finition <code>VirtualHost</code>.
(Ceci am<EFBFBD>liore grandement la lisibilit<EFBFBD> de la configuration
-- la mani<EFBFBD>re dont la configuration est interpr<EFBFBD>t<EFBFBD>e apr<EFBFBD>s la
lecture des fichiers ne met pas en <EFBFBD>vidence le fait que les
d<EFBFBD>finitions positionn<EFBFBD>es avant et surtout apr<EFBFBD>s les serveurs
<li>Toujours positionner les définitions relatives au serveur
principal avant toute définition <code>VirtualHost</code>.
(Ceci améliore grandement la lisibilité de la configuration
-- 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 de tous les
serveurs virtuels.)</li>

View File

@ -1,4 +1,4 @@
<?xml version='1.0' encoding='ISO-8859-1' ?>
<?xml version='1.0' ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1746754 -->
@ -28,10 +28,10 @@
<summary>
<p>Le but de ce document est d'essayer de r<EFBFBD>pondre aux questions
les plus r<EFBFBD>pandues sur la configuration des <a href="index.html">serveurs virtuels</a>.
Les sc<EFBFBD>narios pr<EFBFBD>sent<EFBFBD>s ici se rencontrent quand plusieurs
serveurs Webs doivent tourner sur une seule et m<EFBFBD>me machine au
<p>Le but de ce document est d'essayer de répondre aux questions
les plus répandues sur la configuration des <a href="index.html">serveurs virtuels</a>.
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>
@ -40,23 +40,23 @@
<section id="purename"><title>Fonctionnement de plusieurs serveurs
virtuels par nom sur une seule adresse IP.</title>
<p>Votre serveur poss<EFBFBD>de plusieurs noms d'h<EFBFBD>te qui correspondent <EFBFBD>
une seule adresse IP, ce qui lui permet de r<EFBFBD>pondre diff<EFBFBD>remment si
une requ<EFBFBD>te est envoy<EFBFBD>e <EFBFBD> <code>www.example.com</code> ou
<p>Votre serveur possède plusieurs noms d'hôte qui correspondent à
une seule adresse IP, ce qui lui permet de répondre différemment si
une requête est envoyée à <code>www.example.com</code> ou
<code>www.example.org</code>.</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<EFBFBD>finis dans le DNS, et qu'ils y soient r<EFBFBD>solus sur l'adresse IP
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<EFBFBD>es dans le fichier
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<EFBFBD>dant ces entr<EFBFBD>es.</p>
que sur la machine possédant ces entrées.</p>
</note>
<highlight language="config">
# Apache doit <EFBFBD>couter sur le port 80
# Apache doit écouter sur le port 80
Listen 80
&lt;VirtualHost *:80&gt;
DocumentRoot "/www/example1"
@ -74,37 +74,37 @@ Listen 80
</highlight>
<p>Les ast<EFBFBD>risques correspondent <EFBFBD> toutes les adresses, si bien que
le serveur principal ne r<EFBFBD>pondra jamais <EFBFBD> aucune requ<EFBFBD>te. Comme le
<p>Les astérisques correspondent à toutes les adresses, si bien que
le serveur principal ne répondra jamais à aucune requête. Comme le
serveur virtuel
<code>ServerName www.example.com</code> se trouve en premier dans le fichier
de configuration, il a la plus grande priorit<EFBFBD> et peut <EFBFBD>tre vu
comme serveur <cite>par d<EFBFBD>faut</cite> ou <cite>primaire</cite>&nbsp;;
ce qui signifie que toute requ<EFBFBD>te re<EFBFBD>ue ne correspondant <EFBFBD> aucune
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 <directive module="core">ServerName</directive> sera servie par ce premier
<directive type="section" module="core">VirtualHost</directive>.</p>
<p>La configuration ci-dessus correspond <EFBFBD> ce que l'on souhaite pour
la plupart des serveurs virtuels <EFBFBD> base de nom. Il faudra cependant
utiliser une configuration diff<EFBFBD>rente si vous souhaitez servir un
contenu diff<EFBFBD>rent en fonction de l'adresse IP ou du port.</p>
<p>La configuration ci-dessus correspond à ce que l'on souhaite pour
la plupart des serveurs virtuels à base de nom. Il faudra cependant
utiliser une configuration différente si vous souhaitez servir un
contenu différent en fonction de l'adresse IP ou du port.</p>
<note>
<title>Note&nbsp;:</title>
<p>Vous pouvez remplacer <code>*</code>
par une adresse IP du syst<EFBFBD>me. Le serveur virtuel concern<EFBFBD>
ne sera alors s<EFBFBD>lectionn<EFBFBD> que pour les requ<EFBFBD>tes HTTP vers
par une adresse IP du système. Le serveur virtuel concerné
ne sera alors sélectionné que pour les requêtes HTTP vers
cette adresse IP.</p>
<p>En g<EFBFBD>n<EFBFBD>ral, il est commode d'utiliser <code>*</code> sur
les syst<EFBFBD>mes dont l'adresse IP n'est pas constante - par
exemple, pour des serveurs dont l'adresse IP est attribu<EFBFBD>e
dynamiquement par le FAI, et o<EFBFBD> le DNS est g<EFBFBD>r<EFBFBD> au moyen
<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 <EFBFBD>tre modifi<EFBFBD>e quand l'adresse IP du
syst<EFBFBD>me est modifi<EFBFBD>e.</p>
fonctionne sans devoir être modifiée quand l'adresse IP du
système est modifiée.</p>
</note>
</section>
@ -113,15 +113,15 @@ Listen 80
d'une seule adresse IP.</title>
<note>
<title>Note&nbsp;:</title><p>Toutes les techniques pr<EFBFBD>sent<EFBFBD>es ici
peuvent <EFBFBD>tre <EFBFBD>tendues <EFBFBD> un plus grand nombre d'adresses IP.</p>
<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.example.com</code> doit r<EFBFBD>pondre, et sur l'autre
<code>server.example.com</code> doit répondre, et sur l'autre
(<code>172.20.30.50</code>), deux serveurs virtuels (ou plus)
r<EFBFBD>pondront.</p>
répondront.</p>
<highlight language="config">
Listen 80
@ -145,28 +145,28 @@ DocumentRoot "/www/mainserver"
&lt;/VirtualHost&gt;
</highlight>
<p>Toute requ<EFBFBD>te arrivant sur une autre adresse que
<p>Toute requête arrivant sur une autre adresse que
<code>172.20.30.50</code> sera servie par le serveur principal.
Les requ<EFBFBD>tes vers <code>172.20.30.50</code> avec un nom de serveur
inconnu, ou sans en-t<EFBFBD>te <code>Host:</code>, seront servies par
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<EFBFBD>me contenu sur des
adresses IP diff<EFBFBD>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<EFBFBD>e <EFBFBD> la fois sur le r<EFBFBD>seau interne (l'Intranet)
et le r<EFBFBD>seau externe (Internet). Sur Internet, le nom
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<EFBFBD>seau interne, ce m<EFBFBD>me
(<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 <EFBFBD>tre configur<EFBFBD> pour r<EFBFBD>pondre de la m<EFBFBD>me mani<EFBFBD>re
aux requ<EFBFBD>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
<directive type="section" module="core">VirtualHost</directive>.</p>
<highlight language="config">
@ -177,30 +177,30 @@ DocumentRoot "/www/mainserver"
&lt;/VirtualHost&gt;
</highlight>
<p>Ainsi, les requ<EFBFBD>tes en provenance de chacun des deux r<EFBFBD>seaux
seront servies par le m<EFBFBD>me <directive type="section"
<p>Ainsi, les requêtes en provenance de chacun des deux réseaux
seront servies par le même <directive type="section"
module="core">VirtualHost</directive>.</p>
<note>
<title>Note&nbsp;:</title><p>Sur le r<EFBFBD>seau interne, il est possible
<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 <EFBFBD>galement que dans l'exemple pr<EFBFBD>c<EFBFBD>dent, vous pouvez
<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<EFBFBD>ponde de la m<EFBFBD>me mani<EFBFBD>re sur toutes ses
que le serveur réponde de la même manière sur toutes ses
adresses.</p>
</note>
</section>
<section id="port"><title>Servir diff<EFBFBD>rents sites sur diff<EFBFBD>rents
<section id="port"><title>Servir différents sites sur différents
ports.</title>
<p>Vous disposez de plusieurs domaines pointant sur la m<EFBFBD>me adresse
IP et vous voulez <EFBFBD>galement servir de multiples ports. L'exemple
suivant montre que la s<EFBFBD>lection en fonction du nom intervient apr<EFBFBD>s
la s<EFBFBD>lection de la meilleure correspondance du point de vue adresse
<p>Vous disposez de plusieurs domaines pointant sur la même adresse
IP et vous voulez également servir de multiples ports. L'exemple
suivant montre que la sélection en fonction du nom intervient après
la sélection de la meilleure correspondance du point de vue adresse
IP/port.</p>
<highlight language="config">
@ -230,7 +230,7 @@ Listen 8080
</section>
<section id="ip"><title>H<EFBFBD>bergement virtuel bas<EFBFBD> sur IP</title>
<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
@ -250,20 +250,20 @@ Listen 80
&lt;/VirtualHost&gt;
</highlight>
<p>Les requ<EFBFBD>tes provenant d'adresses non sp<EFBFBD>cifi<EFBFBD>es dans l'une des
<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<EFBFBD>es vers le serveur
<code>localhost</code> par exemple) seront dirigées vers le serveur
principal, s'il en existe un.</p>
</section>
<section id="ipport"><title>H<EFBFBD>bergements virtuels mixtes bas<EFBFBD>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.example.com</code> et <code>www.example.org</code>.
Pour chacun d'eux, nous voulons un h<EFBFBD>bergement sur les ports 80
Pour chacun d'eux, nous voulons un hébergement sur les ports 80
et 8080.</p>
<highlight language="config">
@ -295,12 +295,12 @@ Listen 172.20.30.50:8080
</section>
<section id="mixed"><title>H<EFBFBD>bergements virtuels mixtes bas<EFBFBD> sur
<section id="mixed"><title>Hébergements virtuels mixtes basé sur
les noms et sur IP</title>
<p>Toute adresse indiqu<EFBFBD>e comme argument d'une section VirtualHost
<p>Toute adresse indiquée comme argument d'une section VirtualHost
et n'apparaissant dans aucun autre serveur virtuel, fait de cette
section un serveur virtuel s<EFBFBD>lectionnable uniquement en fonction de
section un serveur virtuel sélectionnable uniquement en fonction de
son adresse IP.</p>
<highlight language="config">
@ -334,18 +334,18 @@ Listen 80
</section>
<section id="proxy"><title>Utilisation simultan<EFBFBD>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<EFBFBD>me nom est configur<EFBFBD> sur
une machine <EFBFBD> l'adresse <code>192.168.111.2</code>. La directive
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"
name="ProxyPreserveHost">ProxyPreserveHost On</directive> est
employ<EFBFBD>e pour permette au nom de domaine d'<EFBFBD>tre pr<EFBFBD>serv<EFBFBD> lors du
transfert, au cas o<EFBFBD> plusieurs noms de domaines cohabitent sur
une m<EFBFBD>me machine.</p>
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>
<highlight language="config">
&lt;VirtualHost *:*&gt;
@ -364,9 +364,9 @@ Listen 80
<section id="defaultallports"><title>Serveurs virtuels
<code>_default_</code> pour tous les ports</title>
<p>Exemple de capture de <em>toutes</em> les requ<EFBFBD>tes <EFBFBD>manant
d'adresses IP ou de ports non connus, <em>c'est-<EFBFBD>-dire</em>, d'un
couple adresse/port non trait<EFBFBD> par aucun autre serveur virtuel.</p>
<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>
<highlight language="config">
&lt;VirtualHost _default_:*&gt;
@ -375,30 +375,30 @@ Listen 80
</highlight>
<p>L'utilisation d'un tel serveur virtuel avec un joker pour le
port emp<EFBFBD>che de mani<EFBFBD>re efficace qu'une requ<EFBFBD>te n'atteigne le
port empêche de manière efficace qu'une requête n'atteigne le
serveur principal.</p>
<p>Un serveur virtuel par d<EFBFBD>faut ne servira jamais une requ<EFBFBD>te
qui est envoy<EFBFBD>e vers un couple adresse/port utilis<EFBFBD>e par un
serveur virtuel par nom. Si la requ<EFBFBD>te contient un en-t<EFBFBD>te
<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 <EFBFBD> ce couple adresse/port trouv<EFBFBD> en premier
(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<EFBFBD><EFBFBD>crire une requ<EFBFBD>te pour une unique page d'information (ou pour
réécrire une requête pour une unique page d'information (ou pour
un script).</p>
</section>
<section id="defaultdifferentports"><title>Serveurs virtuels
<code>_default_</code> pour des ports diff<EFBFBD>rents</title>
<code>_default_</code> pour des ports différents</title>
<p>La configuration est similaire <EFBFBD> l'exemple pr<EFBFBD>c<EFBFBD>dent, mais
le serveur <EFBFBD>coute sur plusieurs ports et un second serveur virtuel
<code>_default_</code> pour le port 80 est ajout<EFBFBD>.</p>
<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>
<highlight language="config">
&lt;VirtualHost _default_:80&gt;
@ -412,17 +412,17 @@ Listen 80
&lt;/VirtualHost&gt;
</highlight>
<p>Le serveur virtuel par d<EFBFBD>faut d<EFBFBD>fini pour le port 80 (il doit
imp<EFBFBD>rativement <EFBFBD>tre plac<EFBFBD> avant un autre serveur virtuel par
d<EFBFBD>faut traitant tous les ports gr<EFBFBD>ce au joker *) capture toutes
les requ<EFBFBD>tes envoy<EFBFBD>es sur une adresse IP non sp<EFBFBD>cifi<EFBFBD>e. Le
serveur principal n'est jamais utilis<EFBFBD> pour servir une requ<EFBFBD>te.</p>
<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
<code>_default_</code> pour un seul port</title>
<p>Nous voulons cr<EFBFBD>er un serveur virtuel par d<EFBFBD>faut seulement
<p>Nous voulons créer un serveur virtuel par défaut seulement
pour le port 80.</p>
<highlight language="config">
@ -432,13 +432,13 @@ DocumentRoot "/www/default"
&lt;/VirtualHost&gt;
</highlight>
<p>Une requ<EFBFBD>te vers une adresse non sp<EFBFBD>cifi<EFBFBD>e sur le port 80
sera servie par le serveur virtuel par d<EFBFBD>faut, et toute autre
requ<EFBFBD>te vers une adresse et un port non sp<EFBFBD>cifi<EFBFBD>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>
<p>L'utilisation du caract<EFBFBD>re g<EFBFBD>n<EFBFBD>rique <code>*</code> dans la
d<EFBFBD>claration d'un serveur virtuel l'emporte sur
<p>L'utilisation du caractère générique <code>*</code> dans la
déclaration d'un serveur virtuel l'emporte sur
<code>_default_</code>.</p>
</section>
@ -450,8 +450,8 @@ DocumentRoot "/www/default"
<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'<EFBFBD>viter les probl<EFBFBD>mes avec
les noms de serveurs et autres serveurs mandataires qui m<EFBFBD>morisent
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
@ -476,7 +476,7 @@ DocumentRoot "/www/example1"
&lt;/VirtualHost&gt;
</highlight>
<p>Le serveur virtuel peut maintenant <EFBFBD>tre joint par la nouvelle
<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>
@ -485,15 +485,15 @@ DocumentRoot "/www/example1"
<section id="serverpath"><title>Utilisation de la directive
<code>ServerPath</code></title>
<p>Dans le cas o<EFBFBD> vous disposez de deux serveurs virtuels par nom,
le client doit transmettre un en-t<EFBFBD>te <code>Host:</code> correct
pour d<EFBFBD>terminer le serveur concern<EFBFBD>. Les vieux clients HTTP/1.0
n'envoient pas un tel en-t<EFBFBD>te et Apache n'a aucun indice pour
conna<EFBFBD>tre le serveur virtuel devant <EFBFBD>tre joint (il sert la
requ<EFBFBD>te <EFBFBD> partir d'un serveur virtuel primaire). Dans un soucis
de pr<EFBFBD>server la compatibilit<EFBFBD> descendante, il suffit de cr<EFBFBD>er
un serveur virtuel primaire charg<EFBFBD> de retourner une page contenant
des liens dont les URLs auront un pr<EFBFBD>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>
<highlight language="config">
@ -524,22 +524,22 @@ DocumentRoot "/www/subdomain/sub1"
&lt;/VirtualHost&gt;
</highlight>
<p><EFBFBD> cause de la directive
<directive module="core">ServerPath</directive>, une requ<EFBFBD>te sur
<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<EFBFBD>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<EFBFBD>te
<code>Host:</code> correct. Si aucun en-t<EFBFBD>te <code>Host:</code>
n'est transmis, le serveur primaire sera utilis<EFBFBD>.</p>
<p>Notez qu'il y a une singularit<EFBFBD>&nbsp;: une requ<EFBFBD>te sur
<code>http://www.sub2.domain.tld/sub1/</code> est <EFBFBD>galement servie
par le serveur sub1-vhost si le client n'envoie pas d'en-t<EFBFBD>te
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<EFBFBD>es pour s'assurer que le client qui envoie un en-t<EFBFBD>te
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-<EFBFBD>-dire</em> avec ou sans pr<EFBFBD>fixe d'URL.</p>
<em>c'est-à-dire</em> avec ou sans préfixe d'URL.</p>
</section>

View File

@ -1,4 +1,4 @@
<?xml version='1.0' encoding='ISO-8859-1' ?>
<?xml version='1.0' ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1674195 -->
@ -28,51 +28,51 @@
<summary>
<p>Quand de nombreux serveurs virtuels sont cr<EFBFBD><EFBFBD>s, Apache peut
d<EFBFBD>passer les limites en descripteurs de fichiers ('file descriptors',
<EFBFBD>galement appel<EFBFBD>s <cite>gestionnaires de fichiers</cite>) si chacun
<p>Quand de nombreux serveurs virtuels sont créés, Apache peut
dépasser les limites en descripteurs de fichiers ('file descriptors',
également appelés <cite>gestionnaires de fichiers</cite>) si chacun
des serveurs virtuels utilise ses propres fichiers journaux. Le
nombre total de descripteurs de fichiers utilis<EFBFBD>s par Apache est
nombre total de descripteurs de fichiers utilisés par Apache est
d'un par fichier journal, un pour chacune des autres directives
de fichiers journaux, plus un nombre constant compris entre 10 et 20
pour son fonctionnement interne. Les syst<EFBFBD>mes d'exploitation Unix
pour son fonctionnement interne. Les systèmes d'exploitation Unix
limitent le nombre de descripteurs de fichiers utilisables par
processus&nbsp;; une valeur courante pour cette limite est de 64, et
cette valeur peut le plus souvent <EFBFBD>tre augment<EFBFBD>e.</p>
cette valeur peut le plus souvent être augmentée.</p>
<p>Apache tente d'accro<EFBFBD>tre cette valeur limite si n<EFBFBD>cessaire, mais
<p>Apache tente d'accroître cette valeur limite si nécessaire, mais
sans y parvenir dans les cas suivants&nbsp;:</p>
<ol>
<li>Le syst<EFBFBD>me d'exploitation ne permet pas l'utilisation d'appels
syst<EFBFBD>mes <code>setrlimit()</code>.</li>
<li>Le système d'exploitation ne permet pas l'utilisation d'appels
systèmes <code>setrlimit()</code>.</li>
<li>L'appel <code>setrlimit(RLIMIT_NOFILE)</code> ne fonctionne pas
sur votre syst<EFBFBD>me d'exploitation (c'est le cas sous Solaris 2.3).</li>
sur votre système d'exploitation (c'est le cas sous Solaris 2.3).</li>
<li>Le nombre de descripteurs de fichiers n<EFBFBD>cessaires <EFBFBD> Apache
d<EFBFBD>passe la limite physique du mat<EFBFBD>riel.</li>
<li>Le nombre de descripteurs de fichiers nécessaires à Apache
dépasse la limite physique du matériel.</li>
<li>Le syst<EFBFBD>me impose d'autres limites sur l'utilisation des
<li>Le système impose d'autres limites sur l'utilisation des
descripteurs de fichiers, comme par exemple une limite sur les
flux stdio, utilisables uniquement sur les descripteurs de
fichiers inf<EFBFBD>rieurs <EFBFBD> 256. (sous Solaris 2).</li>
fichiers inférieurs à 256. (sous Solaris 2).</li>
</ol>
<p>En cas de probl<EFBFBD>me, Vous pouvez&nbsp;:</p>
<p>En cas de problème, Vous pouvez&nbsp;:</p>
<ul>
<li>R<EFBFBD>duire le nombre de fichiers journaux, en ne sp<EFBFBD>cifiant
<li>Réduire le nombre de fichiers journaux, en ne spécifiant
aucun fichier journal dans les sections
<directive type="section" module="core">VirtualHost</directive>,
en donc en envoyant les informations aux fichiers journaux du
serveur principal (Voir <a href="#splitlogs"><EFBFBD>clatement des
serveur principal (Voir <a href="#splitlogs">Éclatement des
fichiers journaux</a> ci-dessous pour plus d'informations sur
cette possibilit<EFBFBD>).</li>
cette possibilité).</li>
<li>
Dans les cas 1 ou 2 (<EFBFBD>voqu<EFBFBD>s ci-dessus), augmentez la limite sur
les descripteurs de fichiers avant le d<EFBFBD>marrage d'Apache, au
Dans les cas 1 ou 2 (évoqués ci-dessus), augmentez la limite sur
les descripteurs de fichiers avant le démarrage d'Apache, au
moyen d'un script comme
<example>
@ -86,55 +86,55 @@
<!-- the document misc/descriptors.xml does not exist yet in 2.1
<p>Veuillez noter que le document
<a href="../misc/descriptors.html">Descripteurs et Apache</a>
contient plus de d<EFBFBD>tails concernant les probl<EFBFBD>mes de descripteurs
de fichiers et comment les r<EFBFBD>soudre en fonction de votre syst<EFBFBD>me
contient plus de détails concernant les problèmes de descripteurs
de fichiers et comment les résoudre en fonction de votre système
d'exploitation.</p>
-->
</summary>
<section id="splitlogs"><title><EFBFBD>clatement des fichiers journaux</title>
<section id="splitlogs"><title>Éclatement des fichiers journaux</title>
<p>Lorsque vous choisissez d'enregistrer les informations <EFBFBD>manant de
plusieurs serveurs virtuels dans un m<EFBFBD>me fichier journal, vous voudrez
ensuite pouvoir scinder ces informations <EFBFBD> des fins de statistiques, par
exemple, sur les diff<EFBFBD>rents serveurs virtuels. Il est possible de proc<EFBFBD>der
de la mani<EFBFBD>re suivante&nbsp;:</p>
<p>Lorsque vous choisissez d'enregistrer les informations émanant de
plusieurs serveurs virtuels dans un même fichier journal, vous voudrez
ensuite pouvoir scinder ces informations à des fins de statistiques, par
exemple, sur les différents serveurs virtuels. Il est possible de procéder
de la manière suivante&nbsp;:</p>
<p>Tout d'abord, vous devez ajouter le nom du serveur virtuel <EFBFBD> chaque
entr<EFBFBD>e du journal. Ceci se param<EFBFBD>tre au moyen de la directive
<p>Tout d'abord, vous devez ajouter le nom du serveur virtuel à chaque
entrée du journal. Ceci se paramètre au moyen de la directive
<directive module="mod_log_config"> LogFormat</directive> et de la
variable <code>%v</code>. Ajoutez cette variable au d<EFBFBD>but de la cha<EFBFBD>ne
de d<EFBFBD>finition du format de journalisations&nbsp;:</p>
variable <code>%v</code>. Ajoutez cette variable au début de la chaîne
de définition du format de journalisations&nbsp;:</p>
<highlight language="config">
LogFormat "%v %h %l %u %t \"%r\" %&gt;s %b" vhost
CustomLog "logs/multiple_vhost_log" vhost
</highlight>
<p>Cette configuration va provoquer la cr<EFBFBD>ation d'un fichier de
<p>Cette configuration va provoquer la création d'un fichier de
journalisation au format standard (CLF&nbsp;: 'Common Log Format'), mais dont
chaque ligne d<EFBFBD>butera par le nom canonique du serveur virtuel (sp<EFBFBD>cifi<EFBFBD>
chaque ligne débutera par le nom canonique du serveur virtuel (spécifié
par la directive <directive module="core">ServerName</directive>).
(Voir <module>mod_log_config</module> pour d'autres informations sur la
personnalisation des fichiers journaux.)</p>
<p>Au moment de s<EFBFBD>parer les informations du fichier journal en un fichier
<p>Au moment de séparer les informations du fichier journal en un fichier
par serveur virtuel, le programme <code>
<a href="../programs/other.html">split-logfile</a></code> peut <EFBFBD>tre
utilis<EFBFBD>. Ce programme peut <EFBFBD>tre trouv<EFBFBD> dans le r<EFBFBD>pertoire
<a href="../programs/other.html">split-logfile</a></code> peut être
utilisé. Ce programme peut être trouvé dans le répertoire
<code>support</code> de la distribution d'Apache.</p>
<p>Ex<EFBFBD>cutez ce programme au moyen de la commande&nbsp;:</p>
<p>Exécutez ce programme au moyen de la commande&nbsp;:</p>
<example>
split-logfile &lt; /logs/multiple_vhost_log
</example>
<p>Une fois ex<EFBFBD>cut<EFBFBD> avec le nom du fichier contenant tous les journaux,
ce programme va g<EFBFBD>n<EFBFBD>rer un fichier pour chacun des serveurs virtuels
qui appara<EFBFBD>t dans le fichier d'entr<EFBFBD>e. Chaque fichier en sortie est
nomm<EFBFBD> <code>nomduserveur.log</code>.</p>
<p>Une fois exécuté avec le nom du fichier contenant tous les journaux,
ce programme va générer un fichier pour chacun des serveurs virtuels
qui apparaît dans le fichier d'entrée. Chaque fichier en sortie est
nommé <code>nomduserveur.log</code>.</p>
</section>
</manualpage>

View File

@ -1,4 +1,4 @@
<?xml version='1.0' encoding='ISO-8859-1' ?>
<?xml version='1.0' ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1753872 -->
@ -29,25 +29,25 @@
<summary>
<p>Le principe des <cite>Serveurs Virtuels</cite> consiste <EFBFBD>
<p>Le principe des <cite>Serveurs Virtuels</cite> consiste à
faire fonctionner un ou plusieurs serveurs Web (comme
<code>www.company1.example.com</code> et <code>www.company2.example.com</code>)
sur une m<EFBFBD>me machine. Les serveurs virtuels peuvent <EFBFBD>tre soit
"<a href="ip-based.html">par-IP</a>" o<EFBFBD> une adresse IP est
attribu<EFBFBD>e pour chaque serveur Web, soit "<a href="name-based.html"
>par-nom</a>" o<EFBFBD> plusieurs noms de domaine se c<EFBFBD>toient sur
des m<EFBFBD>mes adresses IP. L'utilisateur final ne per<EFBFBD>oit pas
qu'en fait il s'agit d'un m<EFBFBD>me serveur physique.</p>
sur une même machine. Les serveurs virtuels peuvent être soit
"<a href="ip-based.html">par-IP</a>" où une adresse IP est
attribuée pour chaque serveur Web, soit "<a href="name-based.html"
>par-nom</a>" où plusieurs noms de domaine se côtoient sur
des mêmes adresses IP. L'utilisateur final ne perçoit pas
qu'en fait il s'agit d'un même serveur physique.</p>
<p>Apache a <EFBFBD>t<EFBFBD> le pr<EFBFBD>curseur des serveurs proposant cette
m<EFBFBD>thode de serveurs virtuels bas<EFBFBD>s sur les adresses IP. Ses
<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 proposent les deux
m<EFBFBD>thodes de serveurs virtuels : par-IP et par-nom. Cette
deuxi<EFBFBD>me m<EFBFBD>thode est parfois <EFBFBD>galement appel<EFBFBD>e <em>host-based</em>
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>
<p>Vous trouverez ci-dessous une liste documentaire qui vous
expliquera en d<EFBFBD>tails le fonctionnement du support des serveurs
expliquera en détails le fonctionnement du support des serveurs
virtuels par le serveur HTTP Apache.</p>
</summary>
@ -57,8 +57,8 @@
<seealso><a href="ip-based.html">Serveurs virtuels par-IP</a></seealso>
<seealso><a href="examples.html">Exemples de serveurs virtuels</a></seealso>
<seealso><a href="fd-limits.html">Limites des descripteurs de fichiers</a></seealso>
<seealso><a href="mass.html">H<EFBFBD>bergement virtuel en masse</a></seealso>
<seealso><a href="details.html">D<EFBFBD>tails sur les crit<EFBFBD>res de choix du serveur</a></seealso>
<seealso><a href="mass.html">Hébergement virtuel en masse</a></seealso>
<seealso><a href="details.html">Détails sur les critères de choix du serveur</a></seealso>
<section id="support"><title>Support des serveurs virtuels</title>
@ -73,8 +73,8 @@
(ou, <em>trop de fichiers journaux</em>)</li>
<li><a href="mass.html">Configuration dynamique en masse de
Serveurs Virtuels</a></li>
<li><a href="details.html">Explication approfondie des crit<EFBFBD>res
de s<EFBFBD>lection d'un Serveur Virtuel</a></li>
<li><a href="details.html">Explication approfondie des critères
de sélection d'un Serveur Virtuel</a></li>
</ul>
</section>
@ -89,7 +89,7 @@
<li><directive module="core">ServerPath</directive></li>
</ul>
<p>Pour v<EFBFBD>rifier et analyser la configuration de vos serveurs
<p>Pour vérifier et analyser la configuration de vos serveurs
virtuels, vous pouvez utiliser l'argument <code>-S</code> sur
la ligne de commande.</p>
@ -103,9 +103,9 @@
httpd.exe -S
</example>
<p>Cette commande affichera dans le d<EFBFBD>tail comment Apache a
trait<EFBFBD> son fichier de configuration. Les erreurs de configuration
peuvent <EFBFBD>tre corrig<EFBFBD>es par l'examen attentif des adresses IP et
<p>Cette commande affichera dans le détail comment Apache a
traité son fichier de configuration. Les erreurs de configuration
peuvent être corrigées par l'examen attentif des adresses IP et
des noms de serveurs. (Consultez la documentation du programme
<program>httpd</program> pour les autres arguments de la ligne de
commande)</p>

View File

@ -1,4 +1,4 @@
<?xml version='1.0' encoding='ISO-8859-1' ?>
<?xml version='1.0' ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<!-- English Revision: 1673658 -->
@ -30,64 +30,64 @@
<a href="name-based.html">Support Apache des serveurs virtuels par nom</a>
</seealso>
<section id="requirements"><title>Syst<EFBFBD>me requis</title>
<section id="requirements"><title>Système requis</title>
<p>Comme l'indique le terme <cite>par IP</cite>, le serveur
<strong>doit disposer de diff<EFBFBD>rentes paires adresses IP/port pour chaque
serveur virtuel par IP</strong>. La machine peut poss<EFBFBD>der
plusieurs connexions physiques au r<EFBFBD>seau, ou utiliser des
interfaces virtuelles qui sont support<EFBFBD>es par la plupart des
syst<EFBFBD>mes d'exploitation modernes (Consultez la documentation des
syst<EFBFBD>mes d'exploitation pour plus de d<EFBFBD>tails, notamment les "alias
<strong>doit disposer de différentes paires adresses IP/port pour chaque
serveur virtuel par IP</strong>. La machine peut posséder
plusieurs connexions physiques au réseau, ou utiliser des
interfaces virtuelles qui sont supportées par la plupart des
systèmes d'exploitation modernes (Consultez la documentation des
systèmes d'exploitation pour plus de détails, notamment les "alias
IP" et la commande "ifconfig" pour les activer), et/ou utiliser
plusieurs num<EFBFBD>ros de port.</p>
plusieurs numéros de port.</p>
<p>Selon la terminologie du serveur HTTP Apache, l'utilisation d'une
seule adresse IP avec plusieurs ports TCP s'apparente aussi <EFBFBD> de
l'h<EFBFBD>bergement virtuel bas<EFBFBD> sur IP.</p>
seule adresse IP avec plusieurs ports TCP s'apparente aussi à de
l'hébergement virtuel basé sur IP.</p>
</section>
<section id="howto"><title>Comment configurer Apache</title>
<p>Il y a deux mani<EFBFBD>res de configurer Apache pour le support de
<p>Il y a deux manières de configurer Apache pour le support de
multiples serveurs virtuels. Il suffit soit de faire tourner un
processus r<EFBFBD>sident <program>httpd</program> pour chaque nom de
domaine, soit de faire tourner un unique processus r<EFBFBD>sident qui
g<EFBFBD>re tous les serveurs virtuels.</p>
processus résident <program>httpd</program> pour chaque nom de
domaine, soit de faire tourner un unique processus résident qui
gère tous les serveurs virtuels.</p>
<p>Utilisez des processus r<EFBFBD>sidents multiples lorsque&nbsp;:</p>
<p>Utilisez des processus résidents multiples lorsque&nbsp;:</p>
<ul>
<li>il y a des probl<EFBFBD>mes de r<EFBFBD>partition de s<EFBFBD>curit<EFBFBD>, tels
<li>il y a des problèmes de répartition de sécurité, tels
qu'une entreprise1 ne souhaite que personne d'une entreprise2
ne puisse lire ses donn<EFBFBD>es except<EFBFBD> via le Web. Dans ce cas,
vous aurez besoin de deux processus r<EFBFBD>sidents, chacun fonctionnant
avec des param<EFBFBD>tres <directive module="mod_unixd">User</directive>,
ne puisse lire ses données excepté via le Web. Dans ce cas,
vous aurez besoin de deux processus résidents, chacun fonctionnant
avec des paramètres <directive module="mod_unixd">User</directive>,
<directive module="mod_unixd">Group</directive>,
<directive module="mpm_common">Listen</directive>, et
<directive module="core">ServerRoot</directive> diff<EFBFBD>rents.</li>
<directive module="core">ServerRoot</directive> différents.</li>
<li>vous disposez suffisamment de m<EFBFBD>moire et de
<li>vous disposez suffisamment de mémoire et de
<a href="../misc/descriptors.html">descripteurs de fichiers</a>
pour l'<EFBFBD>coute de chaque alias IP de la machine. Il est seulement
pour l'écoute de chaque alias IP de la machine. Il est seulement
possible d'appliquer la directive
<directive module="mpm_common">Listen</directive>, soit sur toutes
les adresses avec le joker "*", soit uniquement sur des adresses
sp<EFBFBD>cifiques. Donc, si vous avez besoin d'<EFBFBD>couter une adresse
spécifiques. Donc, si vous avez besoin d'écouter une adresse
en particulier, vous devrez le faire pour l'ensemble des
autres adresses (Bien qu'il soit plus simple de lancer un
processus <program>httpd</program> pour <EFBFBD>couter N-1 adresses,
processus <program>httpd</program> pour écouter N-1 adresses,
et un autre pour l'adresse restante).</li>
</ul>
<p>Utilisez un unique processus r<EFBFBD>sident lorsque&nbsp;:</p>
<p>Utilisez un unique processus résident lorsque&nbsp;:</p>
<ul>
<li>le partage de la configuration httpd entre les serveurs
virtuels est acceptable.</li>
<li>la machine assume d<EFBFBD>j<EFBFBD> une grande quantit<EFBFBD> de requ<EFBFBD>tes, et
que l'ajout de processus r<EFBFBD>sidents suppl<EFBFBD>mentaires en affecterait
<li>la machine assume déjà une grande quantité de requêtes, et
que l'ajout de processus résidents supplémentaires en affecterait
les performances.</li>
</ul>
@ -95,38 +95,38 @@
<section id="multiple"><title>Configuration de processus multiples</title>
<p>Cr<EFBFBD>ez une installation ind<EFBFBD>pendante du programme
<p>Créez une installation indépendante du programme
<program>httpd</program> pour chaque serveur virtuel. Pour
chacune d'elle, utilisez la directive
<directive module="mpm_common">Listen</directive> dans le fichier
de configuration pour d<EFBFBD>finir l'adresse IP (ou serveur virtuel)
que le processus r<EFBFBD>sident doit g<EFBFBD>rer. Par exemple&nbsp;:</p>
de configuration pour définir l'adresse IP (ou serveur virtuel)
que le processus résident doit gérer. Par exemple&nbsp;:</p>
<highlight language="config">
Listen 192.0.2.100:80
</highlight>
<p>Il est recommand<EFBFBD> d'utiliser une adresse IP plut<EFBFBD>t qu'un nom
de domaine (consultez <a href="../dns-caveats.html">Probl<EFBFBD>mes DNS
<p>Il est recommandé d'utiliser une adresse IP plutôt qu'un nom
de domaine (consultez <a href="../dns-caveats.html">Problèmes DNS
avec Apache</a>).</p>
</section>
<section id="single"><title>Configuration d'un unique processus
r<EFBFBD>sident pour des serveurs virtuels</title>
résident pour des serveurs virtuels</title>
<p>Dans ce cas, un unique processus httpd va g<EFBFBD>rer les requ<EFBFBD>tes
<p>Dans ce cas, un unique processus httpd va gérer les requêtes
pour le serveur principal et tous les serveurs virtuels. Dans le
fichier de configuration, la directive
<directive module="core">VirtualHost</directive> va servir <EFBFBD>
d<EFBFBD>finir les autres directives
<directive module="core">VirtualHost</directive> va servir à
définir les autres directives
<directive module="core">ServerAdmin</directive>,
<directive module="core">ServerName</directive>,
<directive module="core">DocumentRoot</directive>,
<directive module="core">ErrorLog</directive> et
<directive module="mod_log_config">TransferLog</directive> ou
<directive module="mod_log_config">CustomLog</directive> avec des
valeurs diff<EFBFBD>rentes pour chaque serveur virtuel. Par exemple&nbsp;:</p>
valeurs différentes pour chaque serveur virtuel. Par exemple&nbsp;:</p>
<highlight language="config">
&lt;VirtualHost 172.20.30.40:80&gt;
@ -146,37 +146,37 @@ r
&lt;/VirtualHost&gt;
</highlight>
<p>Il est recommand<EFBFBD> d'utiliser une adresse IP plut<EFBFBD>t qu'un nom
de domaine comme argument <EFBFBD> la directive &lt;VirtualHost&gt;
(consultez <a href="../dns-caveats.html">Probl<EFBFBD>mes DNS
<p>Il est recommandé d'utiliser une adresse IP plutôt qu'un nom
de domaine comme argument à la directive &lt;VirtualHost&gt;
(consultez <a href="../dns-caveats.html">Problèmes DNS
avec Apache</a>).</p>
<p>Presque <strong>toutes</strong> les directives de configuration
peuvent <EFBFBD>tre employ<EFBFBD>es dans une directive VirtualHost, <EFBFBD> l'exception
des directives qui contr<EFBFBD>lent la cr<EFBFBD>ation du processus et de
quelques autres. Pour conna<EFBFBD>tre celles utilisables dans une
directive VirtualHost, v<EFBFBD>rifiez leur
peuvent être employées dans une directive VirtualHost, à l'exception
des directives qui contrôlent la création du processus et de
quelques autres. Pour connaître celles utilisables dans une
directive VirtualHost, vérifiez leur
<a href="../mod/directive-dict.html#Context">Contexte</a> en utilisant
l'<a href="../mod/directives.html">Index des directives</a>.</p>
<!--
<p>Les directives <directive module="mpm_common">User</directive> et
<directive module="mpm_common">Group</directive> NE doivent PLUS <EFBFBD>tre
utilis<EFBFBD>es <EFBFBD> l'int<EFBFBD>rieur d'une directive VirtualHost lors d'une
<a href="../suexec.html">ex<EFBFBD>cution sous suEXEC</a>. Voir la directive
<a href="../mod/mod_suexec.html/#suexecusergroup">SuexecUserGroup</a> d<EFBFBD>finie
<directive module="mpm_common">Group</directive> NE doivent PLUS être
utilisées à l'intérieur d'une directive VirtualHost lors d'une
<a href="../suexec.html">exécution sous suEXEC</a>. Voir la directive
<a href="../mod/mod_suexec.html/#suexecusergroup">SuexecUserGroup</a> définie
en remplacement depuis la version 2.0.</p>
-->
<p><directive module="mod_suexec">SuexecUserGroup</directive> peut <EFBFBD>tre
utilis<EFBFBD>es <EFBFBD> l'int<EFBFBD>rieur d'une directive VirtualHost si l'ex<EFBFBD>cution se fait
<p><directive module="mod_suexec">SuexecUserGroup</directive> peut être
utilisées à l'intérieur d'une directive VirtualHost si l'exécution se fait
sous suEXEC. (Voir <a href="../suexec.html">suEXEC</a>).</p>
<p><em>S<EFBFBD>CURIT<EFBFBD>&nbsp;:</em> lorsque vous sp<EFBFBD>cifiez o<EFBFBD> <20>crire les
<p><em>SÉCURITÉ&nbsp;:</em> lorsque vous spécifiez où écrire les
fichiers journaux, soyez attentif aux risques si quelqu'un d'autre
que celui qui a d<EFBFBD>marr<EFBFBD> Apache dispose des droits d'<EFBFBD>criture
que celui qui a démarré Apache dispose des droits d'écriture
sur l'emplacement de ces fichiers. Consultez les
<a href="../misc/security_tips.html">Conseils sur la s<EFBFBD>curit<EFBFBD></a>
pour plus de d<EFBFBD>tails.</p>
<a href="../misc/security_tips.html">Conseils sur la sécurité</a>
pour plus de détails.</p>
</section>
</manualpage>

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml version="1.0" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1719576 -->

View File

@ -1,4 +1,4 @@
<?xml version='1.0' encoding='ISO-8859-1' ?>
<?xml version='1.0' ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1673945 -->
@ -27,41 +27,41 @@
<title>Support Apache des serveurs virtuels par nom</title>
<summary>
<p>Ce document d<EFBFBD>crit quand et comment utiliser des serveurs
<p>Ce document décrit quand et comment utiliser des serveurs
virtuels par nom.</p>
</summary>
<seealso><a href="ip-based.html">Support Apache des serveurs virtuels par IP</a></seealso>
<seealso><a href="details.html">D<EFBFBD>tails sur le fonctionnement des serveurs virtuels</a></seealso>
<seealso><a href="mass.html">Configuration dynamique des h<EFBFBD>bergements virtuels de masse</a></seealso>
<seealso><a href="details.html">Détails sur le fonctionnement des serveurs virtuels</a></seealso>
<seealso><a href="mass.html">Configuration dynamique des hébergements virtuels de masse</a></seealso>
<seealso><a href="examples.html">Exemples d'utilisations de VirtualHost</a></seealso>
<section id="namevip"><title>Serveurs virtuels par nom vs. par IP</title>
<p>Les <a href="ip-based.html">serveurs virtuels</a> par IP utilisent l'adresse IP
de la connexion afin de d<EFBFBD>terminer quel serveur virtuel doit
r<EFBFBD>pondre. Par cons<EFBFBD>quent, vous devez disposer d'adresses IP
diff<EFBFBD>rentes pour chaque serveur.</p>
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.</p>
<p>Avec un h<EFBFBD>bergement
<p>Avec un hébergement
virtuel par nom, le serveur s'appuie sur les informations
transmises par le client dans les en-t<EFBFBD>tes HTTP de ses requ<EFBFBD>tes.
La technique pr<EFBFBD>sent<EFBFBD>e ici vous permet de disposer de serveurs
virtuels diff<EFBFBD>rents partag<EFBFBD>s sur une m<EFBFBD>me adresse IP.</p>
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<EFBFBD>bergement virtuel par nom est habituellement plus simple,
<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<EFBFBD>duit aussi la p<EFBFBD>nurie en adresses IP. Par
cons<EFBFBD>quent, vous devriez utiliser l'h<EFBFBD>bergement virtuel par
nom, sauf dans le cas o<EFBFBD> vous utiliseriez des <EFBFBD>quipements qui
n<EFBFBD>cessitent un h<EFBFBD>bergement bas<EFBFBD> sur IP. Les raisons historiques de
l'h<EFBFBD>bergement bas<EFBFBD> sur IP dans un but de support de certains clients ne
s'appliquent plus <EFBFBD> un serveur web d'usage g<EFBFBD>n<EFBFBD>ral.</p>
ces domaines. Il réduit aussi la pénurie en adresses IP. Par
conséquent, vous devriez utiliser l'hébergement virtuel par
nom, sauf dans le cas où vous utiliseriez des équipements qui
nécessitent un hébergement basé sur IP. Les raisons historiques de
l'hébergement basé sur IP dans un but de support de certains clients ne
s'appliquent plus à un serveur web d'usage général.</p>
<p>La s<EFBFBD>lection du serveur virtuel en fonction du nom s'op<EFBFBD>re en
dehors de l'algorithme de s<EFBFBD>lection du serveur virtuel en fonction
<p>La sélection du serveur virtuel en fonction du nom s'opère en
dehors de l'algorithme de sélection du serveur virtuel en fonction
de l'adresse IP, ce qui signifie que les recherches du point de vue
du nom du serveur ne s'effectuent que parmi le jeu de serveurs
virtuels pour lesquels la correspondance avec la paire adresse
@ -69,42 +69,42 @@
</section>
<section id="alg"><title>Comment le serveur s<EFBFBD>lectionne-t-il le serveur
virtuel bas<EFBFBD> sur le nom appropri<EFBFBD></title>
<section id="alg"><title>Comment le serveur sélectionne-t-il le serveur
virtuel basé sur le nom approprié</title>
<p>Il est important de savoir que la premi<EFBFBD>re <EFBFBD>tape de la r<EFBFBD>solution
de serveur virtuel bas<EFBFBD>e sur le nom est une r<EFBFBD>solution bas<EFBFBD>e sur IP.
La r<EFBFBD>solution de serveur virtuel bas<EFBFBD>e sur le nom ne fait que
choisir le serveur virtuel bas<EFBFBD> sur le nom le plus appropri<EFBFBD>, en se
<p>Il est important de savoir que la première étape de la résolution
de serveur virtuel basée sur le nom est une résolution basée sur IP.
La résolution de serveur virtuel basée sur le nom ne fait que
choisir le serveur virtuel basé sur le nom le plus approprié, en se
limitant aux candidats qui conviennent le mieux du point de vue IP.
La r<EFBFBD>solution bas<EFBFBD>e sur IP est sans objet si l'on
utilise un caract<EFBFBD>re g<EFBFBD>n<EFBFBD>rique (*) pour l'adresse IP dans
La résolution basée sur IP est sans objet si l'on
utilise un caractère générique (*) pour l'adresse IP dans
toutes les directives VirtualHost.</p>
<p>A l'arriv<EFBFBD>e d'une requ<EFBFBD>te, le serveur va rechercher l'argument de
<p>A l'arrivée d'une requête, le serveur va rechercher l'argument de
section <directive type="section"
module="core">VirtualHost</directive> pr<EFBFBD>sentant la meilleure
module="core">VirtualHost</directive> présentant la meilleure
(la plus exacte) correspondance avec la paire adresse IP/port
utilis<EFBFBD>e dans la requ<EFBFBD>te. Si plusieurs serveurs virtuels poss<EFBFBD>dent
cette m<EFBFBD>me paire adresse IP/port, Apache va ensuite comparer les
utilisée dans la requête. Si plusieurs serveurs virtuels possèdent
cette même paire adresse IP/port, Apache va ensuite comparer les
valeurs des directives <directive module="core"
>ServerName</directive> et <directive
>module="core">ServerAlias</directive> avec le nom de serveur
pr<EFBFBD>sent dans la requ<EFBFBD>te.</p>
présent dans la requête.</p>
<p>Si vous ne d<EFBFBD>finissez pas de directive <directive
module="core">ServerName</directive> pour un serveur virtuel <EFBFBD> base
de nom, le serveur utilisera par d<EFBFBD>faut le nom de domaine
enti<EFBFBD>rement qualifi<EFBFBD> (FQDN) d<EFBFBD>duit du nom d'h<EFBFBD>te syst<EFBFBD>me. Cette
configuration sans nom de serveur explicite peut conduire <EFBFBD> des
erreurs de choix du serveur virtuel <EFBFBD> utiliser et est d<EFBFBD>conseill<EFBFBD>e.</p>
<p>Si vous ne définissez pas de directive <directive
module="core">ServerName</directive> pour un serveur virtuel à base
de nom, le serveur utilisera par défaut le nom de domaine
entièrement qualifié (FQDN) déduit du nom d'hôte système. Cette
configuration sans nom de serveur explicite peut conduire à des
erreurs de choix du serveur virtuel à utiliser et est déconseillée.</p>
<section id="defaultvhost"><title>Le serveur virtuel <EFBFBD> base de nom
par d<EFBFBD>faut pour une paire adresse IP/port</title>
<section id="defaultvhost"><title>Le serveur virtuel à base de nom
par défaut pour une paire adresse IP/port</title>
<p>Si aucune directive ServerName ou ServerAlias ne correspond dans
la liste de serveurs virtuels pr<EFBFBD>sentant la meilleure correspondance
la liste de serveurs virtuels présentant la meilleure correspondance
du point de vue adresse IP/port, c'est <strong>le premier serveur
virtuel de cette liste</strong> qui sera utilis<EFBFBD>.</p></section>
virtuel de cette liste</strong> qui sera utilisé.</p></section>
</section>
@ -125,62 +125,62 @@ virtuel bas
</related>
<p>La premi<EFBFBD>re <EFBFBD>tape consiste <EFBFBD> cr<EFBFBD>er une section
<p>La première étape consiste à créer une section
<directive type="section" module="core">VirtualHost</directive>
pour chacun des serveurs <EFBFBD> d<EFBFBD>finir. Dans chaque section
pour chacun des serveurs à définir. Dans chaque section
<directive type="section" module="core">VirtualHost</directive>,
vous devez d<EFBFBD>finir au minimum une directive
<directive module="core">ServerName</directive> pour d<EFBFBD>signer
le serveur concern<EFBFBD> et une directive
<directive module="core">DocumentRoot</directive> pour pr<EFBFBD>ciser
l'emplacement sur le syst<EFBFBD>me de fichiers du contenu de ce serveur.</p>
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<EFBFBD>t</title>
<p>Toute requ<EFBFBD>te qui ne correspond <EFBFBD> aucune section <directive
<note><title>Le serveur principal disparaît</title>
<p>Toute requête qui ne correspond à aucune section <directive
type="section" module="core">VirtualHost</directive> existante
est trait<EFBFBD>e avec la configuration du serveur principal, sans
tenir compte du nom d'h<EFBFBD>te ou de la directive ServerName.</p>
est traitée avec la configuration du serveur principal, sans
tenir compte du nom d'hôte ou de la directive ServerName.</p>
<p>Lorsque vous ajoutez un serveur virtuel bas<EFBFBD> sur le nom <EFBFBD> un
serveur existant, et si les caract<EFBFBD>ristiques de ce serveur
virtuel correspondent <EFBFBD> des combinaisons IP/port pr<EFBFBD>existantes,
les requ<EFBFBD>tes seront alors trait<EFBFBD>es par un serveur virtuel
explicite. Dans ce cas, il est en g<EFBFBD>n<EFBFBD>ral judicieux de cr<EFBFBD>er un
<a href="#defaultvhost">serveur virtuel par d<EFBFBD>faut</a>
<p>Lorsque vous ajoutez un serveur virtuel basé sur le nom à un
serveur existant, et si les caractéristiques de ce serveur
virtuel correspondent à des combinaisons IP/port préexistantes,
les requêtes seront alors traitées par un serveur virtuel
explicite. Dans ce cas, il est en général judicieux de créer un
<a href="#defaultvhost">serveur virtuel par défaut</a>
comportant une directive <directive
module="core">ServerName</directive> correspondant au nom du
serveur principal. De nouveaux domaines sur les m<EFBFBD>mes interface
et port, mais n<EFBFBD>cessitant des configurations distinctes,
pourront alors <EFBFBD>tre ajout<EFBFBD>s en tant que serveurs virtuels
sp<EFBFBD>cifiques (et non par d<EFBFBD>faut).</p>
serveur principal. De nouveaux domaines sur les mêmes interface
et port, mais nécessitant des configurations distinctes,
pourront alors être ajoutés en tant que serveurs virtuels
spécifiques (et non par défaut).</p>
</note>
<note><title>H<EFBFBD>ritage du nom de serveur</title>
<p>Il est toujours pr<EFBFBD>f<EFBFBD>rable de d<EFBFBD>finir une directive <directive
<note><title>Héritage du nom de serveur</title>
<p>Il est toujours préférable de définir une directive <directive
module="core">ServerName</directive> au niveau de chaque serveur
virtuel <EFBFBD> base de nom. Si un serveur virtuel ne d<EFBFBD>finit pas
virtuel à base de nom. Si un serveur virtuel ne définit pas
de directive <directive module="core">ServerName</directive>, le
nom de ce serveur virtuel sera h<EFBFBD>rit<EFBFBD> du serveur principal. Si
aucun nom de serveur n'a <EFBFBD>t<EFBFBD> explicitement d<EFBFBD>fini au niveau du
serveur principal, le serveur tentera de d<EFBFBD>terminer son nom via
une r<EFBFBD>solution de nom DNS inverse sur la premi<EFBFBD>re adresse
d'<EFBFBD>coute. Dans tous les cas, ce nom de serveur h<EFBFBD>rit<EFBFBD> influencera
la s<EFBFBD>lection du serveur virtuel <EFBFBD> base de nom, c'est pourquoi il
est toujours pr<EFBFBD>f<EFBFBD>rable de d<EFBFBD>finir une directive <directive
nom de ce serveur virtuel sera hérité du serveur principal. Si
aucun nom de serveur n'a été explicitement défini au niveau du
serveur principal, le serveur tentera de déterminer son nom via
une résolution de nom DNS inverse sur la première adresse
d'écoute. Dans tous les cas, ce nom de serveur hérité influencera
la sélection du serveur virtuel à base de nom, c'est pourquoi il
est toujours préférable de définir une directive <directive
module="core">ServerName</directive> pour chaque serveur virtuel
<EFBFBD> base de nom.</p>
à base de nom.</p>
</note>
<p>Par exemple, supposez que vous h<EFBFBD>bergez le domaine
<p>Par exemple, supposez que vous hébergez le domaine
<code>www.example.com</code> et que vous souhaitez ajouter le
serveur virtuel <code>other.example.com</code> qui pointe sur
la m<EFBFBD>me adresse IP. Il vous suffit d'ajouter la configuration
suivante <EFBFBD> <code>httpd.conf</code>&nbsp;:</p>
la même adresse IP. Il vous suffit d'ajouter la configuration
suivante à <code>httpd.conf</code>&nbsp;:</p>
<highlight language="config">
&lt;VirtualHost *:80&gt;
# Le premier serveur virtuel de la liste est aussi le
# serveur par d<EFBFBD>faut pour *:80
# serveur par défaut pour *:80
ServerName www.example.com
ServerAlias example.com
DocumentRoot "/www/domain"
@ -192,65 +192,65 @@ virtuel bas
&lt;/VirtualHost&gt;
</highlight>
<p>Autrement, vous pouvez sp<EFBFBD>cifiez une adresse IP explicite
<EFBFBD> la place de <code>*</code> dans la directive
<p>Autrement, vous pouvez spécifiez une adresse IP explicite
à la place de <code>*</code> dans la directive
<directive type="section" module="core" >VirtualHost</directive>.
Par exemple, cette m<EFBFBD>thode est utile si vous souhaitez faire
tourner quelques serveurs virtuels par nom sur une m<EFBFBD>me adresse
IP, et d'autres, soit par IP, soit bas<EFBFBD>s sur un autre jeu de
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<EFBFBD>re section
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<EFBFBD>der au
m<EFBFBD>me site Web&nbsp;:</p>
indique aux utilisateurs les autres noms permis pour accéder au
même site Web&nbsp;:</p>
<highlight language="config">
ServerAlias example.com *.example.com
</highlight>
<p>ainsi, toutes les requ<EFBFBD>tes portant sur un domaine
<p>ainsi, toutes les requêtes portant sur un domaine
<code>example.com</code> seront servies par le serveur virtuel
<code>www.example.com</code>. Les caract<EFBFBD>res joker <code>*</code>
et <code>?</code> peuvent <EFBFBD>tre utilis<EFBFBD>s pour les correspondances.
<code>www.example.com</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 <EFBFBD>tre correctement configur<EFBFBD> pour lier ces noms <EFBFBD> une
adresse IP associ<EFBFBD>e avec votre serveur.</p>
doit être correctement configuré pour lier ces noms à une
adresse IP associée avec votre serveur.</p>
<p>La recherche du serveur virtuel <EFBFBD> base de nom qui correspond au
plus pr<EFBFBD>s <EFBFBD> la requ<EFBFBD>te s'effectue parmi les <directive
<p>La recherche du serveur virtuel à base de nom qui correspond au
plus près à la requête s'effectue parmi les <directive
type="section" module="core">virtualhost</directive> selon leur
ordre d'apparition dans le fichier de configuration. Le premier
serveur virtuel dont le <directive
module="core">ServerName</directive> ou le <directive
module="core">ServerAlias</directive> correspond est utilis<EFBFBD>, sans
priorit<EFBFBD> particuli<EFBFBD>re en cas de pr<EFBFBD>sence de caract<EFBFBD>res g<EFBFBD>n<EFBFBD>riques
module="core">ServerAlias</directive> correspond est utilisé, sans
priorité particulière en cas de présence de caractères génériques
(que ce soit pour le ServerName ou le ServerAlias).</p>
<p>La liste compl<EFBFBD>te des noms dans la section <directive
module="core">VirtualHost</directive> sont trait<EFBFBD>s comme une
<p>La liste complète des noms dans la section <directive
module="core">VirtualHost</directive> sont traités comme une
directive <directive module="core">ServerAlias</directive> sans
caract<EFBFBD>res g<EFBFBD>n<EFBFBD>riques.</p>
caractères génériques.</p>
<p>Finalement, vous pouvez affiner la configuration des serveurs
virtuels en pla<EFBFBD>ant d'autres directives <EFBFBD> l'int<EFBFBD>rieur des sections
virtuels en plaçant d'autres directives à l'intérieur des sections
<directive type="section" module="core">VirtualHost</directive>.
La plupart des directives peut <EFBFBD>tre plac<EFBFBD>e dans ces sections en
y changeant seulement la configuration du serveur virtuel associ<EFBFBD>.
Pour d<EFBFBD>terminer si une directive particuli<EFBFBD>re est permise,
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<EFBFBD>es dans le contexte
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<EFBFBD> seulement s'il n'y a pas de configuration contraire
sera utilisé seulement s'il n'y a pas de configuration contraire
par un serveur virtuel.</p>
</section>