Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriel:configurer_un_domaine_avec_apache2_et_bind9 [Le 25/10/2012, 15:34]
honeyshell [Prérequis & Préambule]
tutoriel:configurer_un_domaine_avec_apache2_et_bind9 [Le 11/09/2022, 12:24] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 3: Ligne 3:
 ====== Configurer un domaine sur un serveur avec apache2 et bind9 ====== ====== Configurer un domaine sur un serveur avec apache2 et bind9 ======
  
-Ce tutoriel a pour but de mettre en place un serveur gérant les noms de domaine. ​Les opérations vont consister en deux points principaux:+Ce tutoriel a pour but de vous expliquer pas à pas comment gérer ​un nom de domaine ​avec votre propre machinePour y parvenir nous allons devoir effectuer ​deux étapes principales:
  
-   Configurer le serveur de nom (DNS) pour que le domaine pointe sur l'ip d'une machine cliente +   - [[#​Configuration de bind9|Configurer]] le [[wpfr>​Domain_Name_System|serveur de nom]] (DNS) pour que le domaine pointe sur l'ip d'une machine cliente 
-   Configurer apache pour répondre aux requêtes de ce domaine+   - [[#​Configuration d'​apache2|Configurer]] apache pour répondre aux requêtes de ce domaine.
  
 ===== Prérequis & Préambule ===== ===== Prérequis & Préambule =====
  
-  *  ​Les manipulations du tutoriel requièrent de disposer ​d'un serveur avec les [[::​sudo|droits administrateur]]. +  *  ​Disposer ​d'un serveur avec les [[:​sudo|droits administrateur]]. 
-  *  Le serveur doit disposer ​du serveur web [[::​apache2|apache2]] et du serveur de nom [[::​bind9|bind9]]. +  *  Le serveur doit disposer ​d'​un ​serveur web [[:​apache2|apache2]] et d'​un ​serveur de nom [[:​bind9|bind9]]. 
-  *  Si vous utilisez un [[:​pare-feu|pare-feu]] tel que [[::​iptables|iptables]],​ veillez ​ce que les port suivants soient ​ouvert+  *  Si vous utilisez un [[:​pare-feu|pare-feu]] tel que [[:​iptables|iptables]],​ veillez ​à ce que les ports suivants soient ​ouverts
-    *  **53** (UDP et TCP(([[http://​www.frameip.com/​dns/#​3.1_-_Le_transport]])) pour le DNS +    *  **53** ([[wpfr>​User_Datagram_Protocol|UDP]] et [[wpfr>​Transmission_Control_Protocol|TCP]] (([[http://​www.frameip.com/​dns/#​3.1_-_Le_transport|Source]])) ) pour le DNS  
-    *  **80** (tcp) pour le HTTP (port par défaut) +    *  **80** (TCP) pour le HTTP (port par défaut) 
-    *  **443** (tcp) pour le HTTPS (port par défaut)+    *  **443** (TCP) pour le HTTPS (port par défaut)
  
-  *  Avoir un nom de domaine (dans le tutoriel le nom du serveur utilisé ​est **myserver.adomain.tdl**,​ il correspond ​l'​adresse du serveurpar exemple ksxxxxxx.kimsufi.com). +  *  Avoir le contrôle du nom de domaine ​concerné ​(pouvoir faire la demande de modification de ses DNS). 
-  *  Dans le tutoriel l'ip du serveur correspondant ​**myserver.adomain.tdl** est **12.345.678.9**. +  *  Dans ce tutoriel le nom du serveur utilisé ​sera **myserver.adomain.tdl**,​ il correspond ​à l'​adresse du serveur ​(par exemple ​//ksxxxxxx.kimsufi.com//). 
-  *  Dans le tutoriel l'​email de contact est myemail.mailprovider@tdl (ex: toto@gmail.com). +  *  Dans ce tutoriel l'ip du serveur correspondant ​à **myserver.adomain.tdl** est **12.345.678.9**. 
-  *  Dans le tutoriel les serveur ​DNS secondaires utilisés seront: +  *  Dans ce tutoriel l'​email de contact est //myemail@mailprovider.tdl// (ex: //toto@gmail.com//). 
-    *  dns1.domain.tdl +  *  Dans ce tutoriel les serveurs ​DNS secondaires utilisés seront: 
-    *  dns2.domain.tdl +    *  ​**dns1.domain.tdl** 
-Dans la pratique, il peut y avoir qu'un seul serveur ​DNStel que sdns2.ovh.net ou encore ns.kimsufi.com (cf. [[http://​guides.ovh.com/​InstallDNSSecondaire|ici]]).+    *  ​**dns2.domain.tdl**\\ Dans la pratique, il est possible ​qu'un seul serveur ​secondaire soit indiquécomme par exemple //sdns2.ovh.net// ou encore ​//ns.kimsufi.com// (cf. [[http://​guides.ovh.com/​InstallDNSSecondaire|ici]]).
  
  
-<note important> ​  +<note important>​ 
-Si le serveur est une machine hébergée à votre domicile afin de faire de [[https://​fr.wikipedia.org/​wiki/​Auto-h%C3%A9bergement_%28Internet%29|l'​auto-hébergement]],​ l'ip utilisée dans les configurations devra être l'​[[:​tutoriel:​connaitre_son_adresse_ip#​adresse_publique|IP publique]] donnée par votre [[wpfr>​Fournisseur_d'​accès_à_internet|FAI]].  +Si le serveur est une machine hébergée à votre domicile afin de faire de [[wpfr>Auto-h%C3%A9bergement_%28Internet%29|l'​auto-hébergement]],​ l'ip utilisée dans les configurations devra être l'​[[:​tutoriel:​connaitre_son_adresse_ip#​adresse_publique|IP publique]] donnée par votre [[wpfr>​Fournisseur_d'​accès_à_internet|FAI]].\\ 
-Si l'ip fournit par le FAI n'est pas fixe, il faudra ​en posséder une : [[http://​www.commentcamarche.net/​faq/​1887-securite-ip-statique-fixe-ou-dynamique|IP fixe]]. Voici une astuce pour garder ​une IP dynamique[[http://​www.imnotgeek.com/​15-05-2012/​un-ndd-com-fr-etc-sur-un-serveur-ip-dynamique-grce-cloudflare-14638/​|voir par ici]]+Si l'ip fournit par le FAI n'est pas fixe, il faudra [[http://​www.commentcamarche.net/​faq/​1887-securite-ip-statique-fixe-ou-dynamique|en posséder une]] 
 + 
 +Si toutefois vous souhaitez conserver ​une IP dynamique, reportez-vous ​[[http://​www.imnotgeek.com/​15-05-2012/​un-ndd-com-fr-etc-sur-un-serveur-ip-dynamique-grce-cloudflare-14638/​|ici]].
 </​note>​ </​note>​
  
Ligne 36: Ligne 38:
 ==== Préambule ==== ==== Préambule ====
  
-En premier ​lieux il va nous falloir configurer bind9 pour communiquer avec les serveur ​de noms secondaire. Car pour qu'un domaine soit configuré correctement des serveurs de noms secondaires doivent connaître la configuration de votre domaine. C'est une histoire de sécurité afin qu'il y ai au moins toujours une machine référente lors de la [[http://​fr.wikipedia.org/​wiki/​Domain_Name_System#​R.C3.A9solution_du_nom_par_un_h.C3.B4te|résolution d'un nom de domaine]].+En premier ​lieu il va falloir configurer bind9 pour communiquer avec les serveurs ​de noms secondaires. Car pour qu'un domaine soit configuré correctementdes serveurs de noms secondaires doivent connaître la configuration de votre domaine. C'est une histoire de sécurité afin qu'il y ait au moins toujours une machine référente lors de la [[wpfr>Domain_Name_System#​R.C3.A9solution_du_nom_par_un_h.C3.B4te|résolution d'un nom de domaine]].
  
 ==== Déclarations ==== ==== Déclarations ====
  
-Dans notre fichier **/​etc/​bind/​named.conf** ​ont doit avoir une inclusion de **/​etc/​bind/​named.conf.options**, c'est dans ce fichier que nous allons ​placer la liste des serveurs autorisés (en réalité vous pouvez la mettre ​ou bon vous semble, mais soyons ​un peu organisé). ​ +Dans le fichier **/​etc/​bind/​named.conf** ​il doit avoir une inclusion de **/​etc/​bind/​named.conf.options**. C'est dans ce fichier que vous allez placer la liste des serveurs autorisés (en réalité vous pouvez la mettre ​où bon vous semble, mais autant être un peu organisé ​;-) ). \\ 
- +Cette liste de serveurs ​autorisés va dépendre de quels serveurs/​services vous utilisez pour vos serveurs DNS secondaires. En général ​le prestataire chez qui vous louez votre serveur ou votre nom de domaine propose un service de DNS secondaire (ex: [[http://​guides.ovh.com/​InstallDNSSecondaire|ovh]] ou [[http://​wiki.gandi.net/​fr/​domains/​faq/​technical-parameters#​gandi-fournit-il-un-serveur-dns-secondaire|gandi]]). 
-Cette liste de serveur ​autorisés va dépendre de quel serveurs/​services vous utilisez pour vos serveurs DNS secondaires. En général ​votre prestataire chez qui vous louez votre serveur ou votre nom de domaine propose un service de DNS secondaire (ex: [[http://​guides.ovh.com/​InstallDNSSecondaire|ovh]] ou [[http://​wiki.gandi.net/​fr/​domains/​faq/​technical-parameters#​gandi-fournit-il-un-serveur-dns-secondaire|gandi]]). ​Dans mon exemple j'​utilise ​le service de http://​www.cloudns.net/​. +<​note>​Pour la suite, ​le service ​utilisé sera celui de http://​www.cloudns.net/​.</​note>​
- +
-Ont définis donc cette liste d'ip autorisé a communiquer avec notre serveur.+
  
-**/​etc/​bind/​named.conf.options**+Pour définir la liste d'ip autorisées à communiquer avec votre serveur, [[:​tutoriel:​comment_modifier_un_fichier|éditez avec les droits d'​administration]] le fichier ​**/​etc/​bind/​named.conf.options** ​pour le modifier comme suit:
  
-<code>+<file>
 options { options {
     directory "/​var/​cache/​bind";​     directory "/​var/​cache/​bind";​
-    auth-nxdomain no;    # conform to RFC1035+    auth-nxdomain no;
     listen-on-v6 { any; };     listen-on-v6 { any; };
-    allow-query { trusted; cloudns; };    // http://​descriptions.netvigilance.com/​tc/​14049 +    allow-query { trusted; cloudns; }; 
-    allow-recursion {trusted; cloudns; }; // http://​www.us-cert.gov/​reading_room/​DNS-recursion033006.pdf+    allow-recursion {trusted; cloudns; };
 }; };
  
Ligne 61: Ligne 61:
 }; };
  
-acl cloudns { // DNS cloudns.net+acl cloudns {
     85.159.233.17;​     85.159.233.17;​
     108.59.1.205; ​     108.59.1.205; ​
Ligne 74: Ligne 74:
     216.24.196.51; ​     216.24.196.51; ​
 }; };
-</code>+</file>
  
-On doit ensuite ​déclarer la zone, on place la configuration dans le fichier **/​etc/​bind/​named.conf.local** (ou ailleurs ...) +Il s'​agit ​ensuite ​d'​[[:​tutoriel:​comment_modifier_un_fichier|éditer avec les droits d'​administration]] ​le fichier ​de configuration ​**/​etc/​bind/​named.conf.local** (ou ailleurs ...) pour: 
- +  * déclarer une zone correspondant au domaine **mydomain.tdl** pour lequel les serveurs de cloudns sont autorisés à communiquer avec le serveur et qui doivent être notifiés des changements. 
-<code+  * indiquer que le reste de la [[#​Configuration_de_la_zone|configuration de zone]] se trouve dans le fichier **/​etc/​bind/​db.mydomain.tdl** 
-zone "​mydomain.tdl"​ { +<file
 +zone "​mydomain.tdl"​ {
   type master; ​   ​   type master; ​   ​
   file "/​etc/​bind/​db.mydomain.tdl";  ​   file "/​etc/​bind/​db.mydomain.tdl";  ​
   allow-transfer { localhost; cloudns; };   allow-transfer { localhost; cloudns; };
-  allow-query { any; }; // http://​descriptions.netvigilance.com/​tc/​14049+  allow-query { any; };
   notify yes;   notify yes;
 }; };
-</code>+</file>
  
-On déclare une zone correspondant au domaine mydomain.tdl pour lequel les serveurs de cloudns sont autorisés a communiquer avec le serveur et qui doivent être notifié des changements. On indique également que le reste de la configuration se trouve dans le fichier **/​etc/​bind/​db.mydomain.tdl**. 
  
 ==== Configuration de la zone ==== ==== Configuration de la zone ====
  
-Voici le fichier de configuration de zone tout prêt: +Vous trouverez ci-dessous un fichier de configuration de zone tout prêt. 
- +<​file ​/​etc/​bind/​db.mydomain.tdl>​
-**/​etc/​bind/​db.mydomain.tdl** +
-<code>+
 $TTL    86400 $TTL    86400
 mydomain.tdl. ​  ​IN ​     SOA     ​myserver.adomain.tdl. myemail.mailprovider.tdl. ( mydomain.tdl. ​  ​IN ​     SOA     ​myserver.adomain.tdl. myemail.mailprovider.tdl. (
Ligne 123: Ligne 121:
 ; Aliases ; Aliases
 blog                IN      CNAME   www blog                IN      CNAME   www
-</code>+</file> 
 +Une description de toutes les composantes de ce fichier ne sera pas développée ici, seules celles intéressantes pour configurer le domaine de manière fonctionnelle le seront ci-dessous. Vous pourrez trouver plus d'​informations [[http://​fr.wikipedia.org/​wiki/​Domain_Name_System#​Principaux_enregistrements_DNS|ici]] par exemple. 
 +  *  Le numéro identifiant la version de votre zone est très important. Ici il s'agit de **2012021601**. Il permet aux serveurs de noms de savoir si il y a une nouvelle version de ce fichier. **À chaque modification de votre zone vous devrez mettre à jour ce numéro** (notez qu'il est au format yyyymmddnn)!
  
-Je ne m’étalerais pas sur la description de toutes ​les composantes ​de ce fichier, mais sur celles ​qui nous intéresses pour configurer le domaine ​de manière fonctionnellePour plus d'infopar [[http://fr.wikipedia.org/wiki/Domain_Name_System#Principaux_enregistrements_DNS|ici]] par exemple+  *  La partie //Name servers for the domain// liste les serveurs ​de noms qui s'​occupe ​de cette zoneEn l’occurrence icile serveur actuel //​myserver.adomain.tdl//,​ ainsi que deux autres: //dns1.domain.tdl// et //​dns2.domain.tdl//​.\\ Dans votre cas vous n'​aurez peut-être pas deux serveurs mais un seul, voire plus. En réalité cela dépend uniquement de combien de serveurs DNS secondaires vous disposez. Par exemple, l' [[#Déclarations|étape précédente]] qui fait appel aux serveurs de cloudns montre que beaucoup y sont à disposition.
  
-  ​ Le numéro identifiant ​la version de notre zone est très important. Ici nous avons **2012021601**. Il permet aux serveurs ​de noms de savoir si il y a une nouvelle version de ce fichier**A chaque modification de vote zone vous devez mettre a jour ce numéro** (notez qu'il est au format yyyymmddnn)!+    ​La partie //Mail server// déclare ​la liste des serveurs ​mx ([[wpfr>​Domain_Name_System#​MX_record|mail exchange]])Ce tutoriel ne s'attardera pas sur cette partie.
  
-  ​ Dans la partie //Name servers for the domain// on liste les serveur de noms qui s'​occupe de cette zone. Nous avons donc notre serveur actuel myserver.adomain.tdl,​ ainsi que deux autres: dns1.domain.tdl et dns2.domain.tdl. Dans votre cas vous n'​aurez peut-être pas 2 serveurs mais 1 seul, voir plus. en réalité cela dépend uniquement de combien de serveur DNS secondaires vous disposez. Dans notre exemple plus haut ou nous utilisons les serveurs de cloudns on vois que nous en avons beaucoup a disposition. +    ​La partie //Nodes in domain// ​ fait correspondre une ip à chaque ​sous-domaines.
- +
-    * Dans la partie //Mail server// on déclare la liste des serveurs mx ([[http://​fr.wikipedia.org/​wiki/​Domain_Name_System#​MX_record|mail exchange]]). On ne s'​attardera pas la dessus dans ce tutoriel. +
- +
-    * Dans la partie //Nodes in domain// ​ce sont les sou domaine pour lesquels ont fait correspondre une ip.  +
- +
-    * Dans la partie //Aliases// on déclares les alias. Dans notre exemple on dit que le sous domaine **blog** est un alias de **www**, donc même ip.+
  
 +    * La partie //Aliases// déclare les alias. Ici le sous-réseau **blog** est un alias de **www**, donc aura la même ip.
 ==== Backup des zones ==== ==== Backup des zones ====
  
-ce stade la zone est déclaréExécutez cette commande pour vérifier que notre zone est configuré ​correctement:​+À ce stade la zone est déclaréePour vérifier que celle-ci ​est configurée ​correctement, saisissez dans un [[:​terminal]] la [[:​commande_shell|commande]] suivante:
  
 <​code>​named-checkconf -z</​code>​ <​code>​named-checkconf -z</​code>​
  
-Vous devez avoir dans la liste une ligne correspondant ​a notre zone:+Vous devez avoir dans la liste une ligne correspondant ​à cette zone:
  
 <​code>​zone mydomain.tdl/​IN:​ loaded serial 2012092401</​code>​ <​code>​zone mydomain.tdl/​IN:​ loaded serial 2012092401</​code>​
Ligne 151: Ligne 146:
 <​code>​zone mydomain.tdl/​IN:​ not loaded due to errors.</​code>​ <​code>​zone mydomain.tdl/​IN:​ not loaded due to errors.</​code>​
  
-Si tout va bien on recharge ​la config ​du serveur de nom:+Si tout va bien, rechargez ​la configuration ​du serveur de nom:
  
-<​code>​ +<​code>​sudo service bind9 reload</​code>​
-  ​service bind9 reload +
-  Reloading domain name service...: bind9. +
-</​code>​+
  
-Vous devez maintenant aller configurer vos serveurs DNS secondaires. Je ne pourrais pas expliquer la démarche dans ce tutoriel puisque elle dépend du service de serveur de nom secondaire que vous utilisez. Mais typiquement vous aurez a informer ces serveurs DNS secondaires de l'ip de votre serveur DNS principal. ​+qui devrait répondre
  
-Une fois la procédure effectué du coté de vos serveur de nom secondaire, le tour devrait être jouéCependant nous allons tout de même vérifier tout ça ...+<​code> ​ Reloading domain name service...: bind9.</​code>​
  
-Sur votre serveur, entrez cette commande afin de récupérer les information ​de zone auprés ​de la machine DNS principale (c'​est ​dire la votre)+Vous devez maintenant aller configurer vos serveurs DNS secondaires. Cette démarche dépendant du service de serveur de nom secondaire que vous utilisez, elle ne peut pas être expliquée dans ce tutoriel. Mais typiquement vous aurez à informer ces serveurs DNS secondaires de l'ip de votre serveur DNS principal. 
 + 
 +Une fois la procédure effectuée du coté de vos serveurs de nom secondaire, le tour devrait être joué. Mais il faut tout de même vérifier tout ça ... 
 + 
 +Sur votre serveur, entrez cette commande afin de récupérer les informations ​de zone auprès ​de la machine DNS principale (c'est-à-dire la votre)
  
 <​code>​dig soa mydomain.tdl</​code>​ <​code>​dig soa mydomain.tdl</​code>​
  
-On doit normalement voir notre configuration de zone. Repérez surtout le numéro dans **;; ANSWER SECTION:** il doit correspondre ​votre numéro (le plus récent bien entendu).+Vous devriez ​normalement voir votre configuration de zone. Repérez surtout le numéro dans **;; ANSWER SECTION:** il doit correspondre ​à votre numéro (le plus récent bien entendu).
  
-Mais on veut également ​s'assurer que les serveur ​de noms secondaire ​connaissent bien notre zone et/ou sont bien jour (en repérant le numéro). Pour cela entrez cette commande (**ou l'ip correspond ​l'ip d'​un/​du serveur DNS secondaire**)+Mais vous pouvez ​également ​vous assurer que les serveurs ​de noms secondaires ​connaissent bien votre zone et/ou sont bien à jour (en repérant le numéro). Pour cela entrez cette commande (**ou l'ip correspond ​à l'ip d'​un/​du serveur DNS secondaire**)
  
 <​code>​dig @87.117.xxx.xx soa mydomain.tdl</​code>​ <​code>​dig @87.117.xxx.xx soa mydomain.tdl</​code>​
  
-Si le serveur de nom secondaire est jour: **tout est ok** !+Si le serveur de nom secondaire est à jour: **tout est ok** :-) !
  
 ==== Propagation DNS ==== ==== Propagation DNS ====
  
-Il faut maintenant propager votre nouvelle configuration de DNS pour ce domaine afin que les autres serveurs DNS du monde sache a quelle machine (votre serveur) demander des infos sur votre zone. Pour cela, le prestataire chez qui vous avez acheter ​votre domaine doit vous proposer une interface permettant de changer les serveur ​DNS de votre domaine. +Il faut maintenant propager votre nouvelle configuration de DNS pour ce domaine afin que les autres serveurs DNS du monde sachent à quelle machine (votre serveur ​et les serveur DNS secondaires) demander des informations ​sur votre zone.\\ 
-Vous devrez ​alors indiquer le serveur DNS primaire (notre serveur myserver.adomain.tdl) et le ou les serveurs DNS secondaires (dns1.domain.tdldns2.domain.tdl)+Pour cela, le prestataire chez qui vous avez acheté ​votre domaine doit vous proposer une interface permettant de changer les serveurs ​DNS de votre domaine. Vous devrez ​indiquer le serveur DNS primaire ​et le(s) serveur(s) DNS secondaire(s),​ à savoir ici **myserver.adomain.tdl** ainsi que **dns1.domain.tdl** et **dns2.domain.tdl**.
  
-Pensez ​vérifier en premier ​lieux que votre configuration va être accepté. Pour cela utilisez par exemple le [[http://​www.afnic.fr/​fr/​produits-et-services/​services/​zonecheck/​formulaire-complet/​|formulaire de l'​afnic]].+Pensez ​à vérifier en premier ​lieu que votre configuration va être accepté. Pour cela utilisez par exemple le [[http://​www.afnic.fr/​fr/​produits-et-services/​services/​zonecheck/​formulaire-complet/​|formulaire de l'​afnic]].
  
-Une fois cette procédure ​lancé ​le délais ​pour que vous puissiez constater que le domaine pointe bien sur votre machine est relatif. En principe le prestataire chez qui vous avez acheté le domaine vous informera de l'avancé ​de la procédure et du moins de si elle a fonctionné.+Une fois cette procédure ​lancée ​le délai ​pour que vous puissiez constater que le domaine pointe bien sur votre machine est relatif. En principe le prestataire chez qui vous avez acheté le domaine vous informera de l'avancée ​de la procédure et à minima ​si elle a fonctionné.
  
-De chez vous, vous pouvez vérifier si le domaine pointe correctement vers votre machine effectuant un simple ping par exemple.+De chez vous, vous pouvez vérifier si le domaine pointe correctement vers votre machine ​en effectuant un simple ​''​ping'' ​par exemple.
  
 <​code>​ping mydomain.tdl</​code>​ <​code>​ping mydomain.tdl</​code>​
  
-Si l'IP indiqué par le ping correspond a celle de votre serveur, c'est que la propagation a été faite. Ou que du moins les serveurs DNS de votre Fournisseur d'​Accès Internet en ont connaissance.+Si l'IP indiqué par le ''​ping'' ​correspond a celle de votre serveur, c'est que la propagation a été faite. Ou du moins que les serveurs DNS de votre Fournisseur d'​Accès Internet en ont connaissance.
  
-===== apache2 =====+===== Configuration d'apache2 =====
  
 ==== Préambule ==== ==== Préambule ====
  
-Nous allons ​configurer le serveur apache afin de répondre aux demandes HTTP correspondant ​a notre domaine. Ce serveur web apache pourrait très se trouver sur une machine différente que celle ou ce trouve le serveur de nom. Souvenez vous de l'ip que vous avez fait correspondre ​vos sous domaine dans la zone tout l'​heure. Le serveur DNS ne fait qu'​informer le client à quelle ip correspond le domaine ou le sous domaine. Dans ce tutoriel ​notre serveur web se trouve ​sur la même machine que notre serveur de nom.+Il s'​agira ici de configurer le serveur apache afin de répondre aux demandes HTTP correspondant ​à votre domaine. Ce serveur web apache pourrait très bien se trouver sur une machine différente que celle ou se trouve le serveur de nom. Souvenez-vous de l'ip que vous avez fait correspondre ​à vos sous-domaine dans la zone [[#​Configuration de la zone|tout à l'​heure]]. Le serveur DNS ne fait qu'​informer le client à quelle ip correspond le domaine ou le sous-domaine. Dans ce tutoriel ​le serveur web se trouvera ​sur la même machine que le serveur de nom.
  
  ==== Création de l’hôte virtuel ====  ==== Création de l’hôte virtuel ====
  
-On édite un fichier ​dans lequel on place la configuration de lhôte virtuel:+[[:​tutoriel:​comment_modifier_un_fichier|Editez avec les droits d'​administration]] le fichier ​de configuration de l'​[[:​apache2#​creation_d_hotes_virtuels|hôte virtuel]] ''/​etc/​apache2/​sites-available/​mydomain.tdl.conf''​ sous cette forme :
  
-**/​etc/​apache2/​sites-available/mydomain.tdl** +<​file ​- mydomain.tdl.conf>
- +
-<code>+
 <​VirtualHost *:80> <​VirtualHost *:80>
- + ServerName mydomain.tdl 
-  DocumentRoot /​home/​sites/​mydomain.tdl/​www ​  # folder + ServerAlias www.mydomain.tdl 
-  ​ServerName mydomain.tdl ​                    # domain + DocumentRoot "/​var/​www/​mydomain"​ 
-  ServerAlias www.mydomain.tdl ​               # alias + <​Directory "/var/www/​mydomain">​ 
-  ServerAdmin myemail.mailprovider@tdl ​       # contact + Options +FollowSymLinks 
- + AllowOverride ​all 
-  <​Directory "/home/sites/mydomain.tdl/www">​ + Require ​all granted 
-    AllowOverride ​All                         # allow .htaccess + </​Directory>​ 
-    allow from all                            # no restrictions + ErrorLog /​var/​log/​apache2/​error.mydomain.tdl.log 
-    ​Options -Indexes ​                         # don't list folders + CustomLog /​var/​log/​apache2/​access.mydomain.tdl.log combined
-  ​</​Directory>​ +
 </​VirtualHost>​ </​VirtualHost>​
-</code>+</file>
  
-Nous placeront ​les fichiers de notre site dans le répertoire ​**/home/sites/mydomain.tdl/www**. Évidemment,​ vous pouvez configurer ce répertoire ​la ou vous le souhaitez. Pour plus d'​information ​sur la configuration ​d'un hôte virtuel ​rendez-vous par [[http://​httpd.apache.org/​docs/​2.2/​fr/​vhosts/​examples.html|ici]] ou par [[:tutoriel/​virtualhosts_avec_apache2|]].+Vous placerez alors les fichiers de votre site dans le répertoire ​''​/var/www/mydomain''​. Évidemment,​ vous pouvez configurer ce répertoire ​là ou vous le souhaitez.\\ 
 +Pour plus une documentation plus approfondie ​sur la création ​d'un hôte virtuel vous pouvez consulter ​[[:apache2#​creation_d_hotes_virtuels|cette page]], et pour des exemples pratiques consulter ​[[:tutoriel:​lamp_repertoires_de_travail|ce tutoriel]]. 
 +<note important>​Faites attention aux [[:droits]] : Apache doit pouvoir accéder aux fichier de votre site web. Pensez donc à modifier les [[:​permissions]] des fichiers en conséquence en suivant [[:​apache2#​permissions|cette documentation]],​ par exemple : 
 +<​code>​sudo chown $USER:​www-data /​var/​www/​public 
 +chmod 750 /​var/​www/​mydomain</​code></​note>​
  
-Faites juste attention aux droits: apache doit pouvoir accéder aux fichier de votre site web. Pensez donc modifier les permissions ​des fichiers en conséquence+<note tip>Si vous avez des difficultés avec Apache (comme des "​accès denied"​) pensez ​regarder du coté des log d'​Apache (''/​var/​log/​apache2/​error.mydomain.tdl.log''​ pour cet hôte)</​note>​
  
-Si vous avez des difficultés avec apache (comme des "​accès denied"​) pensez a regarder du coté des log d'​apache (/var/log/apache2/error.log) +---- 
-------+//Contributeurs:​ [[:​utilisateurs:​buxbux|bux]] ​//
  • tutoriel/configurer_un_domaine_avec_apache2_et_bind9.1351172088.txt.gz
  • Dernière modification: Le 25/10/2012, 15:34
  • par honeyshell