- Wampserver 3.0>Configuration du VirtualHost -
- Publié le : | Modifié le :
WampServer Configuration du VirtualHost
Aperçu :Après une première installation de wampserver, vous aurez certainement du mal à configurer l'accès à vos sites locaux. Il existe deux méthode, l'une rapide et une deuxième nettement plus complexe, mais qui permet de garder l'intégrité du code PHP et de certaines variables, lors de leur transfert vers vôtre hébergeur web.
I Méthode rapide
Ouvrir "Chemin wamp/www/index.php": Changer (environ lg32)"$suppress_localhost = true;" en "$suppress_localhost = false;"
ATTTENTION: Ce n'est pas viable pour des sites qui utilise des variables serveurs, script CGI, wordpress...
II Comment créer des VirtualHost avec Wampserver
Il y a trois étapes pour créer votre premier VirtualHost Apache, et seulement deux si vous en avez déjà défini un (ou plusieurs).
Étape 1 : Créer la définition du VirtualHost.
Éditez le fichier appelé httpd-vhosts.conf
qui pour WampServer a pour chemin complet C:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf
Attention : Si c'est la première fois que vous modifiez le fichier httpd-vhosts.conf, supprimez totalement l'exemple de code par défaut, non seulement il n'est d'aucune utilité, mais, si vous le laissez, il va créer des problèmes. La totalité du code à supprimer correspond à quelque chose comme :
- # Virtual Hosts
- #
- # Required modules: mod_log_config
- # If you want to maintain multiple domains/hostnames on your
- # machine you can setup VirtualHost containers for them. Most configurations
- # use only name-based virtual hosts so the server doesn't need to worry about
- # IP addresses. This is indicated by the asterisks in the directives below.
- #
- # Please see the documentation at
- # <URL:[httpd.apache.org];
- # for further details before you try to setup virtual hosts.
- #
- # You may use the command line option '-S' to verify your virtual host
- # configuration.
- #
- # VirtualHost example:
- # Almost any Apache directive may go into a VirtualHost container.
- # The first VirtualHost section is used for all requests that do not
- # match a ServerName or ServerAlias in any <VirtualHost> block.# match a ServerName or ServerAlias in any <VirtualHost> block.
- #
- <VirtualHost *:80>
- ServerAdmin webmaster@dummy-host.example.com
- DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
- ServerName dummy-host.example.com
- ServerAlias www.dummy-host.example.com
- ErrorLog "logs/dummy-host.example.com-error.log"
- CustomLog "logs/dummy-host.example.com-access.log" common
- </VirtualHost>
- <VirtualHost *:80>
- ServerAdmin webmaster@dummy-host2.example.com
- DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
- ServerName dummy-host2.example.com
- ErrorLog "logs/dummy-host2.example.com-error.log"
- CustomLog "logs/dummy-host2.example.com-access.log" common
- </VirtualHost>
Très important, il faut d'abord s'assurer que localhost fonctionne toujours - Il n'est pas défini comme VirtualHost par défaut -, donc, si c'est la première définition de VirtualHost nous allons mettre dans ce fichier et en premier :
- <VirtualHost *:80>
- ServerName localhost
- ServerAlias localhost
- DocumentRoot C:/wamp/www
- <Directory "C:/wamp/www/">
- Options Indexes FollowSymLinks MultiViews
- AllowOverride all
- Require local
- </Directory>
- </VirtualHost>
Maintenant, nous définissons notre projet, et ce bien sûr, nous le faisons pour chacun des projets par un VirtualHost différent.
- <VirtualHost *:80>
- DocumentRoot "C:/wamp/www/project1"
- ServerName project1
- ServerAlias www.project1
- <Directory "C:/wamp/www/project1/">
- Options Indexes FollowSymLinks MultiViews
- AllowOverride All
- Require local
- </Directory>
- </VirtualHost>
2. Ajoutez votre nouveau nom de domaine dans le fichier HOSTS.
Ajouter votre nouveau nom de domaine dans le fichier HOSTS.
Maintenant, nous devons ajouter le nom de domaine que nous avons utilisé dans la définition de l'hôte virtuel dans le fichier HOSTS de telle sorte que Windows saura où le trouver. C'est similaire à la création d'un enregistrement DNS A, mais il n'est visible dans ce cas que sur ce PC spécifique.
Éditez `C:\windows\system32\drivers\etc\hosts`
Le fichier n'a pas d'extension et doit absolument rester sans extension. Méfiez-vous du bloc-notes (Notepad), car il peut essayer d'ajouter une extension `.txt` si vous n'avez pas de meilleure éditeur. Je vous suggère de télécharger Notepad++, c'est gratuit et un très bon éditeur.
C'est aussi un fichier protégé que vous devez modifier avec des privilèges d'administrateur, il faut donc lancer l'éditeur avec l'option « Exécuter en tant qu'administrateur » Explications Exécuter en tant qu'administrateur.

Après édition et ajout du domaine projet1, le contenu du fichier devrait ressembler à ça :
- 127.0.0.1 localhost
- 127.0.0.1 project1
- ::1 localhost
- ::1 project1
Que l'on peut très bien regrouper sur les mêmes lignes, à condition de ne pas mettre plus de huit noms de serveur par ligne :
- 127.0.0.1 localhost projet1
- ::1 localhost projet1
Remarque:Les noms (Par exemple project1) doivent être exactement les mêmes que les noms des ServerName définis dans les VirtualHost.
Notez que vous devez avoir les définitions pour l'adresse `127.0.0.1` de bouclage IPv4 et aussi l'adresse `::1` de bouclage IPv6.
Apache supporte IPv6 depuis la version 2.2.19 et le navigateur va utiliser IPv4 ou IPv6, ou les deux. Je n'ai aucune idée de comment il décide quel type utiliser, mais il peut utiliser IPv6 et, si l'adresse locale IPv6 n'est pas définie, il peut y avoir des problèmes.
Maintenant, nous devons indiquer à Windows de rafraîchir le cache des noms de domaine (Sinon, il faudra redémarrer).
Ouvrir une fenêtre de commande en tant qu'Administrateur Explications Lancer en tant qu'administrateur et tapez les trois commandes ci-dessous, en attendant la fin de chacune :

- ipconfig /flushdns
- net stop Dnscache
- net start Dnscache

Cela oblige Windows à effacer le cache des noms de domaine puis à le recharger. En rechargeant Windows relira le fichier HOSTS et le nouveau domaine `project1` sera connu.
3. Valider la ligne dans le fichier httpd.conf
qui inclut le fichier de définition des hôtes virtuels.
Éditez votre fichier httpd.conf, utilisez les menus de wampmanager.exe pour vous assurer que vous modifiez le bon fichier. (Wampmanager->Apache->httpd.conf)
Trouvez ces lignes dans le fichier httpd.conf
- # Virtual hosts
- #Include conf/extra/httpd-vhosts.conf
Et, pour valider, il faut décommenter, donc retirer le `#` au début de la ligne Include pour obtenir :
- # Virtual hosts
- Include conf/extra/httpd-vhosts.conf
Pour activer ce changement en exécutant Apache nous devons maintenant arrêter et redémarrer le service Apache.
- Wampmanager -> Apache -> Service -> Redémarrer le service
4. Configuration pour accéder à wampserver depuis Microsoft Edge.
Ouvrez une fenêtre de commande admin (clic droit sur le bouton "fenêtre" en bas à gauche puis "Invite de commande (admin)". Dans cette invite coller ceci :
- CheckNetIsolation LoopbackExempt -a -n="Microsoft.MicrosoftEdge_8wekyb3d8bbwe"
Vous pouvez lancer Edge et accèder à la page d'accueil de wampserver.
5. Réglage minimaliste pour le WI-FI.
Si vous faites des tests sur tablette où smartphone, il faut retoucher le fichier "C:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf
". :(
Pour localhost et chaque projet faites comme suit:
- <VirtualHost *:80>
- DocumentRoot "C:/wamp/www/project1"
- ServerName project1
- ServerAlias www.project1
- <Directory "C:/wamp/www/project1/">
- Options Indexes FollowSymLinks MultiViews
- AllowOverride All
- #Require local # Ajoutez '#' devant la ligne
- Require all granted # Ajoutez cette ligne
- </Directory>
- </VirtualHost>
relancer les services dans le menu de wampserver.
Ce n'est pas la meilleur solution puisque vous devrez tapez les adresses sur votre tablette\smartphone. le menu de la page d'accueil de localhost de wampserver ne trouve pas les projets. Donc tapez dans la barre d'adresse "192.168.*.*/nom_du_projet" (pour l'adresse cmd:ipconfig, celle en ipv4).