Gérer proprement vos « Virtual Hosts » avec WampServer

Gérer proprement vos « Virtual Hosts » avec WampServer

Gérer proprement vos « Virtual Hosts » avec WampServer

Aucun commentaire sur Gérer proprement vos « Virtual Hosts » avec WampServer Publié par

Sous WampServer il existe à ma connaissance 2 méthodes pour gérer les «Virtual Hosts », la première est la plus connu et consiste à les créer en ajoutant la configuration dans le fichier httpd-vhosts.conf. La deuxième méthode se base sur la méthode précédente, la différence se trouve dans les dernières étapes. Au lieu d’ajouter les configurations dans le même fichier, on va les dispatcher en plusieurs fichiers, ce qui facilite la maintenance et le débogage en cas de problème.

Du fait de certains changements dans WampServer, cet article n’est plus valable depuis la version 2.5.

Cet article nécessite au préalable des connaissances sur les « Virtual Hosts ».
J’utilise ici WampServer 2.2 comme serveur local, je n’ai pas testé pour les version antérieurs.
Veillez à bien remplacer les chemins vers Wamp par l’emplacement de votre installation.

Etape 1 : Activer le « Virtual Host » de WampServer

Pour cela ouvrez le fichier httpd.conf qui se trouve dans le répertoire « D:\wamp\bin\apache\apache2.4.2\conf », puis dé-commentez la ligne suivante :

LoadModule vhost_alias_module modules/mod_vhost_alias.so

Remplacer le chemin vers apache par votre version, ex. : apache2.4.2 -> apachex.x.x.
Supprimer le (#) devant la ligne pour la dé-commentez.

Etape 2 : Ajouter son « localhost » comme « Virtual Host »

Cette étape est importante, ne la zappé pas, sinon vous n’aurez plus accès à votre « localhost ». Ouvrez donc le fichier httpd-vhosts.conf qui se trouve dans « D:\wamp\bin\apache\apache2.4.2\conf\extra », ajoutez à la fin du fichier le code suivant :

# Pour garder son localhost opérationnel
<VirtualHost *:80>
  DocumentRoot "D:\wamp\www"
  ServerName localhost
</VirtualHost>

La directive « NameVirtualHost » est obsolète depuis la version 2.4 d’apache, ajouter là à votre code si besoin.

Etape 3 : Ajouter un projet en tant que « Virtual Host »

On peut gérer dans le fichier httpd-vhosts.conf tous les prochains « Virtual Hosts », en les ajoutant les uns à la suite des autres (c’est la méthode classique que j’ai abandonné). En ouvrant le fichier index.php qui se trouve dans le répertoire « D:\wamp\www » on s’aperçoit qu’il y a un chemin prédéfini pour gérer ses « Virtual Hosts », si on observe bien, il fonctionne comme les « alias » :

//chemin jusqu'aux fichiers vhosts
$vhostsDir = '../vhosts/';

[...]

$vhostsContents = '';

// recuperation des vhosts
if (is_dir($vhostsDir)) {
    $handle = opendir($vhostsDir);
    while ($file = readdir($handle)) {
        if (is_file($vhostsDir.$file) && strstr($file, '.conf')) {
            $msg = '';
            $vhostsContents. = '<li><a href="http://'.str_replace('.conf', '', $file).
            '/">http://'.str_replace('.conf', '', $file).
            '</a></li>';
        }
    }
    closedir($handle);
}
if (!isset($vhostsContents))
    $vhostsContents = $langues[$langue]['txtNovhosts'];

Si ce n’est pas déjà le cas, il faut créer un dossier « vhosts » dans le répertoire de Wamp « D:\wamp ». Ensuite on créé un fichier de configuration (son nom sera l’url de notre projet), par exemple mon-site.localhost.conf. Dans celui-ci on place notre configuration que l’on met d’habitude dans le fichier httpd-vhosts.conf.

# Mon Site
<VirtualHost *:80>
	ServerName mon-site.localhost
	DocumentRoot "D:\vhosts\monsite\www"
	DirectoryIndex index.php
	<Directory "D:\vhosts\monsite\www">
    	AllowOverride All
    	Require all granted
	</Directory>
</VirtualHost>

Attention ici j’utilise « Require all granted » car ma version d’apache est la 2.4, pour les versions inférieurs il faut utiliser « Allow from All » qui donne les permissions à tout le monde.
Remplacer « D:\vhosts\monsite\www » par la racine web de votre projet, ici j’ai créer un répertoire « vhosts » pour regrouper tous mes projets utilisant un « Virtual Host ».

Etape 4 : Ajouter l’adresse aux « Hosts » de Windows.

Pour terminer la configuration, éditez le fichier « hosts » qui se trouve dans « C:\Windows\System32\drivers\etc », dé-commentez la ligne 127.0.0.1 localhost et ajoutez après celle-ci la ligne 127.0.0.1 mon-site.localhost. Démarrez maintenant WampServer, et accédez à votre localhost depuis votre navigateur, si vous n’avez pas fait d’erreur vous devriez avoir l’affichage suivant :

Résultat Vhosts WampServer
Félicitation ! Vous avez créé votre « Virtual Host » avec succès.

A propos de l'auteur :

Fondateur de DJWebCreator, développeur web et mobile. Également amateur de nouvelles technologies et de science-fiction.

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.

Back to Top