Je viens de lire attentivement votre texte LE BESOIN DE VIRTUALHOST.
Il me semble avoir bien compris vos 3 étapes jusqu'à la validation de la ligne du fichier httpd.conf.
C'est après que je suis perdu, en particulier avec ce qui suit la phrase "Maintenant, voici le prolongement logique des VirtualHost".
- Vous indiquez qu'on peut copier le code de son site dans un autre lieu que C:\wamp\www et vous donnez un exemple.
- Vous définissez un VirtualHost associé à cet exemple; Cette définition sera-t-elle contenue dans le fichier httpd-vhosts.conf?
- Vous indiquez d'ajouter ce nouveau domaine de développement dans le fichier HOSTS Dans l'exemple de ce fichier, on trouve successivement localhost puis project1 inscrits à l'étape 2 et ensuite on retrouve bien le nouveau domaine donné en exemple.
Y-a-t-il une raison d'avoir un projet dans la structure C:\wamp (dans votre exemple: project1) s'il est possible de placer le code de son ou ses sites ailleurs?
Merci à l'avance de l'éclairage que vous pourrez me donner.
> - Vous définissez un VirtualHost associé à cet exemple; > Cette définition sera-t-elle contenue dans le fichier httpd-vhosts.conf? Obligatoirement.
Les « sites locaux » peuvent être ailleurs que dans wamp/www/ et même sur un disque réseau. Il n'existe aucune raison particulière de les avoir dans wamp/www/
Avec Wampserver 3, l'ajout (ou la suppression) d'un VirtualHost peut se faire en trois clics.
Dans la définition du VirtualHost project1 vous avez la ligne: Require local
Dans la définition du VirtualHost exemple.dev vous avez les lignes: <RequireAny> Require local Require ip 168.192.0 </RequireAny>
Plus bas, vous définissez un VirtualHost pour un disque réseau où apparaissent - dans le DocumentRoot et le Directory //192.168.0.11/ (et non pas 168.192.0) - seulement Require local et pas de Require ip ...
Est-ce à dire que le disque D: où serait placé le code de exemple.dev est un disque réseau? - Si oui, pourquoi ces différences de Document Root et Directory avec l'exemple suivant? - Si non, pourquoi la ligne Require ip 168.192.0?
> dans le DocumentRoot et le Directory //192.168.0.11/ (et non pas 168.192.0) Parce que 192.168.0.11 est l'adresse IP locale dudit disque réseau. Nota : 192.168.0 voudrait dire toutes les adresses IP entre 192.168.0.1 et 192.168.0.255
<RequireAny> Require local Require ip 168.192.0 </RequireAny> Veut dire que les accès sont autorisés : - local : pour le PC local sur lequel est installé le serveur. - ip 168.192.0 : pour les PC du réseau dont les IP sont entre 192.168.0.1 et 192.168.0.255
Voir la documentation Apache pour: - Require : [httpd.apache.org] - RequireAny : [httpd.apache.org] et éventuellement pour RequireNone et RequireAll