mirror of
https://github.com/apache/httpd.git
synced 2025-08-13 14:40:20 +00:00

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@202445 13f79535-47bb-0310-9956-ffa450edef68
177 lines
7.5 KiB
Plaintext
177 lines
7.5 KiB
Plaintext
<?xml version='1.0' encoding='ISO-8859-1' ?>
|
|
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
|
|
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
|
|
<!-- English Revision: 169327 -->
|
|
<!-- French translation by alain B, review by Vincent Deffontaines -->
|
|
|
|
<!--
|
|
Copyright 2005 The Apache Software Foundation or its licensors, as
|
|
applicable.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<manualpage metafile="ip-based.xml.meta">
|
|
<parentdocument href="./">Serveurs virtuels</parentdocument>
|
|
<title>Support Apache des serveurs virtuels par IP</title>
|
|
|
|
<seealso>
|
|
<a href="name-based.html">Support Apache des serveurs virtuels par nom</a>
|
|
</seealso>
|
|
|
|
<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érentes adresses IP 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).</p>
|
|
|
|
</section>
|
|
|
|
<section id="howto"><title>Comment configurer Apache</title>
|
|
|
|
<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é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ésidents multiples lorsque :</p>
|
|
|
|
<ul>
|
|
<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ées excepté via le Web. Dans ce cas,
|
|
vous aurez besoin de deux processus résidents, chacun fonctionnant
|
|
avec des paramètres <directive module="mpm_common">User</directive>,
|
|
<directive module="mpm_common">Group</directive>,
|
|
<directive module="mpm_common">Listen</directive>, et
|
|
<directive module="core">ServerRoot</directive> différents.</li>
|
|
|
|
<li>vous disposez suffisamment de mémoire et de
|
|
<a href="../misc/descriptors.html">descripteurs de fichiers</a>
|
|
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é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 écouter N-1 adresses,
|
|
et un autre pour l'adresse restante).</li>
|
|
</ul>
|
|
|
|
<p>Utilisez un unique processus résident lorsque :</p>
|
|
|
|
<ul>
|
|
<li>le partage de la configuration httpd entre les serveurs
|
|
virtuels est acceptable.</li>
|
|
|
|
<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>
|
|
|
|
</section>
|
|
|
|
<section id="multiple"><title>Configuration de processus multiples</title>
|
|
|
|
<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éfinir l'adresse IP (ou serveur virtuel)
|
|
que le processus résident doit gérer. Par exemple :</p>
|
|
|
|
<example>
|
|
Listen www.smallco.com:80
|
|
</example>
|
|
|
|
<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ésident pour des serveurs virtuels</title>
|
|
|
|
<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 à
|
|
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érentes pour chaque serveur virtuel. Par exemple :</p>
|
|
|
|
<example>
|
|
<VirtualHost www.smallco.com><br />
|
|
ServerAdmin webmaster@mail.smallco.com<br />
|
|
DocumentRoot /groups/smallco/www<br />
|
|
ServerName www.smallco.com<br />
|
|
ErrorLog /groups/smallco/logs/error_log<br />
|
|
TransferLog /groups/smallco/logs/access_log<br />
|
|
</VirtualHost><br />
|
|
<br />
|
|
<VirtualHost www.baygroup.org><br />
|
|
ServerAdmin webmaster@mail.baygroup.org<br />
|
|
DocumentRoot /groups/baygroup/www<br />
|
|
ServerName www.baygroup.org<br />
|
|
ErrorLog /groups/baygroup/logs/error_log<br />
|
|
TransferLog /groups/baygroup/logs/access_log<br />
|
|
</VirtualHost>
|
|
</example>
|
|
|
|
<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>
|
|
|
|
<p>Presque <strong>toutes</strong> les directives de configuration
|
|
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 ê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 ê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ÉCURITÉ :</em> lorsque vous spécifiez où écrire les
|
|
fichiers journaux, soyez attentif aux risques si quelqu'un d'autre
|
|
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écurité</a>
|
|
pour plus de détails.</p>
|
|
|
|
</section>
|
|
</manualpage>
|