Comment créer un virtual host pour XAMPP sous Windows

xampp sous windows

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

Le serveur Apache d’XAMPP est également accessible via l’adresse http://127.0.0.1/.

Sur une machine local, les sites pourront être placer sur le nom de domaine mais dans des répertoires différents .

http://localhost/site1/
http://localhost/site2/

Cette technique ne peut être utilisée sur une serveur de production, ou chaque site doit avoir son propre domaine.

http://site1.com
http://site2.org

La solution est de créer des “virtual host”

Les virtual hosts (hébergement virtuelles) permettent d’héberger plusieurs sites et domaines sur une même machine .

http://site1.local
http://site2.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.

Créer 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 site1.local

Ce code indique que le domaine site.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 adresses :

http://localhost/
http://site1.local
1*4F7rKuTifB2gOZdSSdrN1Q 1 15 juillet 2024
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 site1.local
127.0.0.1 site2.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

NameVirtualHost *
<VirtualHost *>
DocumentRoot "C:\xampp\htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *>
DocumentRoot "C:\mes-sites\site1\www"
ServerName site1.local
<Directory "C:\mes-sites\site1\www">
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *>
DocumentRoot "C:\mes-sites\site2\www"
ServerName site2.local
<Directory "C:\mes-sites\site2\www">
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>

Ajout des virtual hosts site1.local et site2.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://site1.local  vers C:\mes-sites\site1\www
http://site2.local vers C:\mes-sites\site2\www

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.