1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>Problèmes liés au DNS avec le serveur HTTP Apache - Serveur Apache HTTP</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <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" />
12 <script src="./style/scripts/prettify.js" type="text/javascript">
15 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
16 <body id="manual-page"><div id="page-header">
17 <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>
18 <p class="apache">Serveur Apache HTTP Version 2.4</p>
19 <img alt="" src="./images/feather.gif" /></div>
20 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
22 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="./">Version 2.4</a></div><div id="page-content"><div id="preamble"><h1>Problèmes liés au DNS avec le serveur HTTP Apache</h1>
24 <p><span>Langues Disponibles: </span><a href="./en/dns-caveats.html" hreflang="en" rel="alternate" title="English"> en </a> |
25 <a href="./fr/dns-caveats.html" title="Français"> fr </a> |
26 <a href="./ja/dns-caveats.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
27 <a href="./ko/dns-caveats.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
28 <a href="./tr/dns-caveats.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
31 <p>Cette page pourrait se résumer ainsi : configurez le
32 serveur HTTP Apache de façon
33 à ce qu'il n'ait pas besoin de résolution DNS pour interpréter les
34 fichiers de configuration. Si httpd doit effectuer des résolutions
35 DNS pour interpréter les fichiers de configuration, votre serveur
36 pourra présenter des problèmes de fiabilité (en d'autres termes,
37 il est possible qu'il refuse de démarrer), ou d'attaques par déni ou
38 usurpation de service (y compris l'attribution de requêtes à un
39 serveur virtuel autre que le serveur virtuel voulu).</p>
41 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#example">Un exemple simple</a></li>
42 <li><img alt="" src="./images/down.gif" /> <a href="#denial">Déni de service</a></li>
43 <li><img alt="" src="./images/down.gif" /> <a href="#main">L'adresse du "serveur principal"</a></li>
44 <li><img alt="" src="./images/down.gif" /> <a href="#tips">Conseils pour éviter ce genre de problème</a></li>
46 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
48 <h2><a name="example" id="example">Un exemple simple</a></h2>
51 <pre class="prettyprint lang-config">
52 # Ceci est un exemple de mauvaise configuration ; ne l'utilisez pas comme base
54 <VirtualHost www.example.dom>
55 ServerAdmin webgirl@example.dom
56 DocumentRoot /www/example
61 <p>Pour fonctionner correctement, le serveur a absolument besoin de deux
62 informations à propos de chaque serveur virtuel : le nom du serveur
63 défini par la directive <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code>, et au moins une adresse IP à
64 laquelle le serveur va se rattacher et répondre. L'exemple ci-dessus
65 ne comporte pas d'adresse IP, si bien que httpd devra utiliser le
66 DNS pour trouver l'adresse IP de <code>www.example.dom</code>. Si pour
67 une raison quelconque, le DNS n'est pas disponible au moment où
68 votre serveur interprète son fichier de configuration, ce serveur
69 virtuel <strong>ne sera pas pris en compte dans la
70 configuration</strong>. Il sera incapable de
71 répondre à toute requête pour ce serveur virtuel.</p>
73 <p>Supposons que l'adresse de <code>www.example.dom</code> soit
74 192.0.2.1, et examinons cet extrait de configuration :</p>
76 <pre class="prettyprint lang-config">
77 # Ceci est un exemple de mauvaise configuration ; ne l'utilisez pas comme base
79 <VirtualHost 192.0.2.1>
80 ServerAdmin webgirl@example.dom
81 DocumentRoot /www/example
86 <p>Cette fois, httpd doit effectuer une recherche DNS inverse pour
87 trouver le nom <code>ServerName</code> de ce serveur virtuel. Si
88 cette recherche inverse échoue, le serveur virtuel sera
89 partiellement désactivé. Si le serveur
90 virtuel est à base de nom, il sera en fait totalement désactivé,
91 mais s'il est à base d'adresse IP, il fonctionnera probablement.
92 Cependant, httpd échouera s'il doit générer une URL complète pour
93 le serveur qui inclut ce nom de serveur (comme dans le cas d'une
96 <p>Voici un extrait de configuration qui permet d'éviter ces deux
97 types de problèmes :</p>
99 <pre class="prettyprint lang-config">
100 <VirtualHost 192.0.2.1>
101 ServerName www.example.dom
102 ServerAdmin webgirl@example.dom
103 DocumentRoot /www/example
107 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
108 <div class="section">
109 <h2><a name="denial" id="denial">Déni de service</a></h2>
112 <p>Considérons cet extrait de configuration :</p>
114 <pre class="prettyprint lang-config">
115 <VirtualHost www.example1.dom>
116 ServerAdmin webgirl@example1.dom
117 DocumentRoot /www/example1
119 <VirtualHost www.example2.dom>
120 ServerAdmin webguy@example2.dom
121 DocumentRoot /www/example2
126 <p>Supposons que vous ayez assigné 192.0.2.1 à
127 <code>www.example1.dom</code> et 192.0.2.2 à <code>www.example2.dom</code>. En
128 outre, supposons que <code>example1.dom</code> gère son propre DNS. Avec
129 cette configuration, <code>example1.dom</code> sera en mesure de
130 détourner tout trafic destiné à <code>example2.dom</code>. Pour y
131 parvenir, tout ce qu'ils ont à faire consiste à
133 <code>www.example1.dom</code>. Comme ils gèrent leur propre DNS, vous ne
134 pouvez pas les empêcher de faire pointer l'enregistrement
135 <code>www.example1.dom</code> vers l'adresse qu'ils veulent.</p>
137 <p>Les requêtes à destination de 192.0.2.2 (y compris toutes celles
138 où l'utilisateur à tapé une URL de la forme
139 <code>http://www.example2.dom/quelquepart</code>), seront toutes servies
140 par le serveur virtuel <code>example1.dom</code>. Une meilleur
141 compréhension de la raison pour laquelle ceci peut se produire
142 nécessite une discussion plus approfondie à propos de la manière
143 dont httpd associe les requêtes entrantes aux différents serveurs
144 virtuels qui vont les servir. Un document de base décrivant ceci <a href="vhosts/details.html">est disponible</a>.</p>
145 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
146 <div class="section">
147 <h2><a name="main" id="main">L'adresse du "serveur principal"</a></h2>
150 <p><a href="vhosts/name-based.html">Le support des
151 serveurs virtuels à base de nom</a> oblige httpd à
152 connaître la/les adresse(s) IP de l'hôte sur
153 lequel <code class="program"><a href="./programs/httpd.html">httpd</a></code> s'exécute. Pour obtenir cette
154 adresse, soit il utilise la directive <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code> globale (si elle est présente),
155 soit il fait appel à la fonction C <code>gethostname</code> (qui
156 doit renvoyer le même nom que la commande shell "hostname"). Il
157 effectue ensuite une recherche DNS sur cette adresse. Pour le
158 moment, il n'existe aucun moyen d'éviter cette recherche DNS.</p>
160 <p>Si vous craignez que cette recherche DNS échoue parce que votre
161 serveur DNS est arrêté, vous pouvez insérer le nom d'hôte dans le
162 fichier <code>/etc/hosts</code> (où il est probablement déjà
163 enregistré afin que la machine démarre correctement). Assurez-vous
164 ensuite que la machine est configurée pour utiliser
165 <code>/etc/hosts</code> dans le cas où la recherche DNS échoue.
166 Suivant le système d'exploitation que vous utilisez, vous y
167 parviendrez en éditant <code>/etc/resolv.conf</code>, ou
168 <code>/etc/nsswitch.conf</code>.</p>
170 <p>Si votre serveur n'a aucune autre raison d'effectuer des
171 recherches DNS, vous pouvez définir la variable d'environnement
172 <code>HOSTRESORDER</code> à "local", et vous serez alors en mesure
173 d'exécuter httpd. Tout dépend du système d'exploitation et des
174 bibliothèques de résolution de noms que vous utilisez. Elle affecte
175 aussi les programmes CGI, à moins que vous n'utilisiez
176 <code class="module"><a href="./mod/mod_env.html">mod_env</a></code> pour contrôler l'environnement. Il est
177 conseillé de consulter les pages de manuel ou les FAQs de votre
178 système d'exploitation.</p>
179 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
180 <div class="section">
181 <h2><a name="tips" id="tips">Conseils pour éviter ce genre de problème</a></h2>
186 utilisez des adresses IP au sein des <code class="directive"><a href="./mod/core.html#virtualhost">VirtualHost</a></code>
190 utilisez des adresses IP avec la directive <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>
194 vérifiez que tous les serveurs virtuels possèdent un nom
195 <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code> explicite
198 <li>créez un serveur virtuel <code><VirtualHost
199 _default_:*></code> qui n'a aucune page à servir</li>
202 <div class="bottomlang">
203 <p><span>Langues Disponibles: </span><a href="./en/dns-caveats.html" hreflang="en" rel="alternate" title="English"> en </a> |
204 <a href="./fr/dns-caveats.html" title="Français"> fr </a> |
205 <a href="./ja/dns-caveats.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
206 <a href="./ko/dns-caveats.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
207 <a href="./tr/dns-caveats.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
208 </div><div id="footer">
209 <p class="apache">Copyright 2012 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
210 <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[//><!--
211 if (typeof(prettyPrint) !== undefined) {