Créer un virtual host pour XAMPP sous Windows

Par défaut le serveur Apache de XAMPP répond à un seul “nom de domaine”, le fameux et mondialement connu : http://localhost/

On peut également atteindre le serveur Apache d’XAMPP par l’adresse http://127.0.0.1/ ou par l’adresse IP du terminal ou il est installé.

Cette limitation nous impose de placer tous nos sites sous le même domaine dans des dossiers différents.

http://localhost/yoda-shop/
http://localhost/skywallker/

Cette technique ne représente en rien la réalité, ou chaque site aura son propore nom de domaine.

http://yoda-shop.com
http://skywallker.org

Cette différence va poser des problèmes lors de la mise en ligne, notamment pour les liens et inclusions de fichiers relatifs à la racine du site.

La solution “virtual host”

Les virtual hosts permettent d’héberger plusieurs sites et domaines sur une même machine et donc de créer un domaine différent pour chaque site.

http://yoda-shop.local
http://skywallker.local
L’extension n’est pas obligatoire et peut être différente de .local. Cependant il est recommandé d’utiliser .local pour bien différencier un site en développement d’un site en production.

Creation d’un virtual host

La création d’un virtual host se fait en deux étapes :

  1. Ajout d’un nouveau domaine dans le fichier hosts de l’ordinateur
  2. Définition des virtual hosts sur le serveur Apache

Ajout d’un domaine à l’ordinateur

Ouvrez le fichier hosts dans un éditeur. Généralement, sous windows, le fichier hosts se trouve dans le dossier caché ci-dessous :

C:\windows\system32\drivers\etc\hosts

Copiez la ligne ci-après à la fin du fichier hosts et sauvegardez le fichier.

127.0.0.1 yoda-shop.local

Ce code indique que le domaine yoda-shop.local correspond à l’adresse IP 127.0.0.1. Petit rappel l’adresse 127.0.0.1 représente l’ordinateur lui-même.

Vous pouvez maintenant accèder à votre serveur web depuis deux addresse :

http://localhost/
http://yoda-shop.local
Le domaine yoda-shop.local pointe vers le serveur local 127.0.0.1 tout comme localhost

Pour ajouter un domaine supplémentaire, ajouter un nouvelle ligne dans le fichier hosts :

127.0.0.1 yoda-shop.local
127.0.0.1 skywallker.local

Configuration du serveur Apache

Ouvrez le fichier httpd-vhosts.conf dans un éditeur. Avec XAMPP vous le trouverez à l’adresse suivante :

C:\xampp\apache\conf\extra\httpd-vhosts.conf

Ajoutez le code ci-après à la fin du fichier

Ajout des virtual hots yoda-shop.local et skywallker.local

Ce code définit les virtual hosts du serveur. Pour définir un virtual host on a besoin de deux informations essentielles :

  1. Le nom du domaine : ServerName
  2. Le dossier racine du site : DocumentRoot
Le DocumentRoot peut très bien se trouver sur un disque externe, un lecteur réseau, Dropbox ou autre service dans le Cloud.

Sauvegardez les modification de httpd-vhosts.conf et redémarrez le serveur Apache.

Et voilà ! Vos nouveaux domaines pointeront vers les dossiers spécifiés :

http://yoda-shop.local  vers C:\mes-sites\yoda-shop\www
http://skywallker.local vers C:\mes-sites\skywallker\www
One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.