Configurer des Virtual Host avec Apache sous Windows
Date de publication : 10/11/2003
Par
Joe l'indien
Dans ce tutoriel nous allons voir comment " héberger " plusieurs Virtual Host,
donc sites, sur le même serveur.
Avant-propos
Le fichier vhost.conf
Le fichier hosts
Avant-propos
Tout le monde sait qu'à l'installation d'Apache, il nous faut spécifier un nom d'hôte.
Mais savez-vous qu'il est possible de créer plusieurs hôtes ?
C'est ce qu'on appelle les Virtual Host.
Le fichier vhost.conf
Nous allons donc stopper Apache durant notre toute notre manoeuvre.
Une fois Apache stoppé, rendez vous dans le répertoire de configuration
d'Apache. Nous allons créer un nouveau fichier de configuration pour y
intégrer notre nouveau Virtual Host.
Nous pourrions bien sûr l'intégrer directement dans le httpd.conf
mais celà est beaucoup plus pratique d'avoir un fichier bien distinct vu
que les includes fonctionnent très bien sous Apache.
Personnellement, j'ai un fichier pour chaque chose chez moi; un php.conf,
un alias.conf, un error.conf, etc... ;)
Nous nommerons donc ce fichier vhost.conf.
Voici les lignes à intégrer dans le fichier vhost.conf :
| NameVirtualHost |
www.mon-domaine2.joe |
Ici, on nomme notre Virtual Host. |
| < VirtualHost www.mon-domaine2.joe > |
La même chose ici. Vous pouvez aussi rajouter le port comme ceci www.mon-domaine2.joe:80 |
| ServerAdmin |
mon-email@domaine.com |
Vous avez compris qu'il faut que vous entriez votre email ici ! Bien sûr cette adresse peut être différente de celle de votre premier domaine (www.mon-domaine.joe). C'est d'ailleurs un des intérêts du Virtual Host. |
| DocumentRoot |
H:/home/www/domaine2/ |
Entrez ici le chemin complet jusqu'au répertoire de votre site www.mon-domaine2.joe Logiquement ce n'est pas le même que votre premier site. |
| ServerName |
www.mon-domaine2.joe |
Rien de neuf, on entre le nom du Virtual Host comme nom de Serveur. |
| ErrorLog |
logs/www.mon-domaine2.joe-error_log |
Un petit plus sympathique ;) Pour plus de lisibilité, on stocke les erreurs dans un autre fichier que le premier site. Vous pouvez nommez ce fichier comme bon vous semble. |
| TransferLog |
logs/www.mon-domaine2.joe-access_log |
La même chose qu'au dessus, sauf que là c'est pas pour les erreurs :D |
| < /VirtualHost > |
On ferme la configuration de ce Virtual Host comme on fermerait un TAG en HTML. |
Une fois que notre vhost.conf est prêt, nous pouvons l'inclure dans
le fichier httpd.conf afin qu'Apache le prenne en compte.
Nous allons donc ouvrir un httpd.conf et rajouter, en bas de
préférence pour y accéder plus facilement, la ligne :
Include conf/vhost.conf
Vous pensez que c'est le moment de redémarrer Apache et de voir ce que ça
donne tout ça ?
Et bien détrompez vous, nous n'en sommes qu'à la moitié :D !
Le fichier hosts
La seconde Étape est le fichier hosts de Windows.
Direction C:\WINDOWS\system32\drivers\etc\, le bon fichier est
hosts (voir note ci dessous).
Note : Le fichier hosts peut se trouver dans un répertoire différent sur
certaines configurations. Vous pouvez chercher dans C:\WINDOWS\,
C:\WINDOWS\system32\, C:\WINDOWS\system\ ou dans tout autre
répertoire système de WINDOWS Le fichier peut comporter une extension (par
exemple hosts.sam). La casse peut aussi changer. (hosts ou Hosts)
Je vous conseille fortement de faire un raccourci sur votre bureau, si vous
pensez ajouter plusieurs Virtual Host.
Une fois ce fichier ouvert, vous pourrez voir ceci :
Deux possibilités s'offrent à vous :
-
Soit vous êtes le seul PC et vous ne disposez pas de réseau donc pas
besoin de prévoir qu'une autre machine puisse accéder à
www.mon-domaine2.joe
-
Soit vous êtes sur un réseau et vous trouvez ça intéressant de faire
plusieurs sites Intranet accessibles facilement par
www.le-domaine.joe au lieu de
http://192.168.0.123/site-que-je-veux-voir/
Dans le cas 1.
Il suffit de rajouter la ligne :
127.0.0.1 www.mon-domaine2.joe
Dans le cas 2.
Il faut que vous rajoutiez l'adresse IP que vous avez sur votre réseau.
Pour l'exemple, 192.168.0.123.
Il suffit alors de rajouter la ligne :
192.168.0.123 www.mon-domaine2.joe
Vous pouvez, bien entendu, rajouter autant de lignes que vous le souhaitez
avec la même IP et un " domaine différent "
Au final notre fichier hosts donnera ceci :
-
pour le cas 1
127.0.0.1 localhost
127.0.0.1 www.mon-domaine2.joe
|
-
pour le cas 2
127.0.0.1 localhost
192.168.0.123 www.mon-domaine2.joe
|
Une fois celà fait, on sauvegarde le fichier hosts et on redémarre Apache,
enfin !
On teste l'adresse www.mon-domaine2.joe et ..... Ooooh miracle ça
marche !
Dans le cas contraire, reprenez depuis le début, vous avez du sûrement rater
une étape !
Une fois que vous avez bien compris comment celà fonctionne, vous pouvez
vous amusez à faire des Sub-Domains du genre
forum.mondomaine.joe qui pointe en fait sur un sous-répertoire !
Comme je suis bon et généreux, je vous donne même en prime la possibilité de
télécharger le hosts et le vhost.conf de ce tutoriel !
J'aimerais profiter de cette occasion pour dire publiquement :
LONGUE VIE À DEVELOPPEZ.COM !
Et un grand merci à toutes les personnes qui s'investissent dans cette
communauté.


Copyright © 2003 Joe l'indien. Aucune reproduction, même partielle, ne peut être faite
de ce site et de l'ensemble de son contenu : textes, documents, images, etc
sans l'autorisation expresse de l'auteur.
Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E
de dommages et intérêts.
Cette page est déposée à la
SACD.