Nous allons voir dans ce billet comment créer des hôtes virtuels pour Apache sous Windows.
Ceci permet de faire fonctionner plusieurs sites web sur un même serveur, plutôt que de les mettre derrière le site par défaut.
::TOC::
Nous considèrerons que Apache est déjà installé et configuré (ce tutoriel est fait pour la version 2.2 d'Apache mais le fonctionnement est le même pour Apache 2.0).
1. Préparation d'Apache à l'utilisation d'hôtes virtuels
Cette étape est indispensable à la gestion de multiples hôtes.1.1 Création d'un fichier qui contiendra les hôtes
On commence par créer un fichier hosts.conf dans le dossier de configuration d'Apache (C:\AppServ\Apache2.2\conf dans mon cas), à côté du fichier httpd.conf.Remarque : on pourrait tout mettre dans le httpd.conf, mais c'est plus propre comme ça.
1.2 Modifications du fichier httpd.conf
- A la fin du fichier httpd.conf, ajoutez la ligne suivante :
Include conf/hosts.inc.conf
- Dans le fichier hosts.conf, ajouter la ligne suivante :
NameVirtualHost *
- Ajouter dans hosts.conf le premier virtualHost correspondant au site par défaut :
# Site par défaut
Pensez à adapter le chemin de la directive DocumentRoot qui doit correspondre à celle de la directive principale DocumentRoot dans httpd.conf.
<VirtualHost *>
DocumentRoot chemin_correspondant_a_DocumentRoot
<Directory "/">
Options FollowSymLinks
AllowOverride All
Allow from all
</Directory>
</VirtualHost>
- Les fichiers sont prêts à recevoir de nouveaux hôtes virtuels mais avant cela, je vous recommande de relancer Apache et tester si la configuration fonctionne avant de passer à la suite.
2. Ajouter un hôte virtuel
2.1 Créer le dossier des sources sur le disque
Créez simplement sur votre disque le dossier qui contiendra les sources du nouveau site.2.2 Ajouter le virtualHost dans le fichier hosts.conf
Il suffit simplement d'ajouter les lignes suivantes à la fin du fichier hosts.conf :# www.lesite.comLes paramètres à modifier sont :
<VirtualHost *>
DocumentRoot dossier_contenant_les_sources
ServerName www.lesite.com
# ServerAlias www.unautrenomdedomainesibesoin.com
<Directory "/">
Options FollowSymLinks
AllowOverride All
Allow from all
</Directory>
</VirtualHost>
- DocumentRoot : mettre le chemin du dossier source créé précédemment.
- ServerName : le nom de domaine du site
- ServerAlias (facultatif) : un autre nom de domaine