<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>Support Apache des serveurs virtuels par IP - Serveur Apache HTTP</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.js" type="text/javascript">
</script>

<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.2</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.2</a> &gt; <a href="./">Serveurs virtuels</a></div><div id="page-content"><div id="preamble"><h1>Support Apache des serveurs virtuels par IP</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/vhosts/ip-based.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/vhosts/ip-based.html" title="Français">&nbsp;fr&nbsp;</a> |
<a href="../ja/vhosts/ip-based.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="../ko/vhosts/ip-based.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/vhosts/ip-based.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#explanation">Qu'est-ce que l'hébergement virtuel
basé sur IP</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#requirements">Système requis</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#howto">Comment configurer Apache</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#multiple">Configuration de processus multiples</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#single">Configuration d'un unique processus 
résident pour des serveurs virtuels</a></li>
</ul><h3>Voir aussi</h3><ul class="seealso"><li>
<a href="name-based.html">Support Apache des serveurs virtuels par nom</a>
</li></ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="explanation" id="explanation">Qu'est-ce que l'hébergement virtuel
basé sur IP</a></h2>
<p>L'hébergement virtuel basé sur IP est une méthode permettant
d'appliquer certaines directives en fonction de l'adresse IP et du port
sur lesquels la requête est reçue. En général, il s'agit de servir
différents sites web sur des ports ou interfaces différents.</p>

<p>Dans de nombreux cas, l'<a href="name-based.html">hébergement virtuel
basé sur le nom</a> est plus adapté car il permet à plusieurs serveurs
virtuels de partager la même adresse/port. Voir le document <a href="name-based.html#namevip">Hébergement virtuel basé sur IP ou sur le
nom</a> pour prendre votre décision.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="requirements" id="requirements">Système requis</a></h2>

    <p>Comme l'indique le terme <cite>par IP</cite>, le serveur 
    <strong>doit disposer de couples adresses IP/port différents 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 ports.</p>

    <p>Dans la terminologie du serveur HTTP Apache, l'utilisation de
    plusieurs ports TCP pour une seule adresse IP se nomme aussi
    hébergement virtuel basé sur IP.</p>

</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="howto" id="howto">Comment configurer Apache</a></h2>

    <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 <code class="program"><a href="../programs/httpd.html">httpd</a></code> 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&nbsp;:</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 <code class="directive"><a href="../mod/mpm_common.html#user">User</a></code>, 
      <code class="directive"><a href="../mod/mpm_common.html#group">Group</a></code>, 
      <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code>, et 
      <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code> 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 
      <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code>, 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 <code class="program"><a href="../programs/httpd.html">httpd</a></code> pour écouter N-1 adresses, 
      et un autre pour l'adresse restante).</li>
    </ul>

    <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éjà une grande quantité de requêtes, et 
      que l'ajout de processus résidents supplémentaires en affecterait 
      les performances.</li>
    </ul>

</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="multiple" id="multiple">Configuration de processus multiples</a></h2>

    <p>Créez une installation indépendante du programme 
    <code class="program"><a href="../programs/httpd.html">httpd</a></code> pour chaque serveur virtuel. Pour 
    chacune d'elle, utilisez la directive 
    <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code> dans le fichier 
    de configuration pour définir l'adresse IP (ou serveur virtuel) 
    que le processus résident doit gérer. Par exemple&nbsp;:</p>

    <div class="example"><p><code>
    Listen 192.168.0.1:80
    </code></p></div>

    <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>

</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="single" id="single">Configuration d'un unique processus 
résident pour des serveurs virtuels</a></h2>

    <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 
    <code class="directive"><a href="../mod/core.html#virtualhost">VirtualHost</a></code> va servir à 
    définir les autres directives 
    <code class="directive"><a href="../mod/core.html#serveradmin">ServerAdmin</a></code>, 
    <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>, 
    <code class="directive"><a href="../mod/core.html#documentroot">DocumentRoot</a></code>, 
    <code class="directive"><a href="../mod/core.html#errorlog">ErrorLog</a></code> et 
    <code class="directive"><a href="../mod/mod_log_config.html#transferlog">TransferLog</a></code> ou 
    <code class="directive"><a href="../mod/mod_log_config.html#customlog">CustomLog</a></code> avec des 
    valeurs différentes pour chaque serveur virtuel. Par exemple&nbsp;:</p>

    <div class="example"><p><code>
    &lt;VirtualHost 192.168.0.1:80&gt;<br />
    ServerAdmin webmaster@smallco.example.com<br />
    DocumentRoot /groups/smallco/www<br />
    ServerName smallco.example.com<br />
    ErrorLog /groups/smallco/logs/error_log<br />
    TransferLog /groups/smallco/logs/access_log<br />
    &lt;/VirtualHost&gt;<br />
		<br />
    &lt;VirtualHost 192.168.0.2:80&gt;<br />
    ServerAdmin webmaster@baygroup.example.org<br />
    DocumentRoot /groups/baygroup/www<br />
    ServerName baygroup.example.com<br />
    ErrorLog /groups/baygroup/logs/error_log<br />
    TransferLog /groups/baygroup/logs/access_log<br />
    &lt;/VirtualHost&gt;
		</code></p></div>

    <p>Il est recommandé d'utiliser une adresse IP plutôt qu'un nom 
    de domaine dans la définition du  &lt;VirtualHost&gt; (consultez <a href="../dns-caveats.html">Problèmes DNS avec Apache</a>).</p>

    <p>Les adresses IP et ports explicites l'emportent sur leurs
    équivalents avec caractères génériques, et tout serveur virtuel qui
    correspond à la requête l'emporte sur la configuration du serveur de
    base.</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><code class="directive"><a href="../mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code> 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É&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é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>

</div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/vhosts/ip-based.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/vhosts/ip-based.html" title="Français">&nbsp;fr&nbsp;</a> |
<a href="../ja/vhosts/ip-based.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="../ko/vhosts/ip-based.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/vhosts/ip-based.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.2/vhosts/ip-based.html';
(function(w, d) {
    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
        d.write('<div id="comments_thread"><\/div>');
        var s = d.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
    }
    else { 
        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
    }
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
//--><!]]></script>
</body></html>