Comme tout webmaster, lorsque vous créez votre premier site, vous installez sans doute un logiciel comme WAMP ou EasyPhp. Vous mettez alors votre site dans le répertoire /www/ et celui ci est alors accessible via l'url http://localhost/
Problématique
Mais que se passe-t-il lorsqu'avec un peu d'expérience vous vous mettez à développer plusieurs site simultanément ?
Présentation:
Si comme moi ça vous casse les pieds (problèmes d'urls relative et
absolues qui ne fonctionnent plus lorsque vous hébergez votre site en
production, urls trop longues à taper pour accéder au site, etc...)
alors ce tutoriel pourra vous être utile.
Sommaire
L'objectif du tutoriel
Nous allons abandonner définitivement les urls à rallonge et leur préférer de jolies et courtes adresses comme par exemple : http://monprojet.dev/
Prérequis
Ce tutoriel a été écrit pour des personnes travaillant sous environnement windows, et j'utilise ici un serveur Wamp. Vous n'aurez sans doute pas de difficultés à le transposer sous un autre logiciel.
- Je considère que vous avez installé WAMP sous C:\wamp\.
- Je considère que vous avez placé votre projet en cours sous C:\wamp\www\monprojet\.
- Vous avez besoin d'un éditeur texte, le bloc note windows peut faire l'affaire.
Configurer l'hôte pour windows
Ouvrez le fichier :
C:\Windows\System32\drivers\etc\hosts
Vous devriez lire vers la ligne 20 quelque chose comme ceci :
C:\Windows\System32\drivers\etc\hosts
Vous devriez lire vers la ligne 20 quelque chose comme ceci :
127.0.0.1 localhost ::1 localhost
Rajoutez la ligne :
127.0.0.1 monprojet.dev
Et enregistrez le fichier.
Remarque :
Si vous ne pouvez pas éditer le fichier, vérifiez que celui-ci n'est pas en lecture seule.
Sous Vista, vous risquez de rencontrer encore plus de problèmes avec l'UAC. Faites une copie du fichier sur votre bureau, mettez les droits d'écriture, faites la modification, remettez le fichier en lecture seule, et écrasez le fichier original.
Configuration de Apache
Solution 1
Sous wamp, lorsque celui-ci est lancé, cliquez sur l'icone dans la
barre des tâches, cliquez sur "Apache" et vous devriez voir dans les
entrées du menu déroulant un fichier httpd.conf. Ouvrez ce fichier et
nous allons faire les modifications nécessaires.
Vous pouvez retrouver ce fichier sous C:\wamp\bin\apache\apacheX.X.X\conf\httpd.conf.
A la fin du fichier, rajoutez ceci :
1)
Vous pouvez retrouver ce fichier sous C:\wamp\bin\apache\apacheX.X.X\conf\httpd.conf.
A la fin du fichier, rajoutez ceci :
1)
##### ## localhost ## DOMAINE principal ##### NameVirtualHost localhost <VirtualHost localhost> DocumentRoot C:/wamp/www/ ServerName localhost </VirtualHost>
2) et également
##### ## monprojet.dev ## DOMAINE de monprojet ##### NameVirtualHost monprojet.dev <VirtualHost monprojet.dev> DocumentRoot C:/wamp/www/monprojet/ ServerName monprojet.dev </VirtualHost>
Remarque :
Il est indispensable de bien mettre les 2 définitions d'hôtes. Si vous ne mettez que la partie 2) alors l'url http://localhost/ vous amènera aussi au dossier contenant votre projet. Ce qui n'est bien sûr pas souhaité, car vous avez besoin d'accéder au répertoire /www/.
Enregistrez le fichier. Redémarrez votre serveur apache.
Solution 2
Modifier le fichier « httpd.conf » peut être délicat lorsque l'on ne
maitrise pas totalement le sujet. Ce fichier est essentiel au bon
fonctionnement d'Apache, une simple erreur peut empêcher le serveur de
se lancer.
Pour éviter de modifier ce fichier, WAMP propose par défaut un dossier Alias ( C:\wamp\alias\ )
Dans ce dossier, créez un nouveau fichier texte, nommez le : localhost.conf, puis copiez-y le contenu :
Toujours dans le même dossier, créez un nouveau fichier texte et nommez le : monprojet.dev.conf, puis copiez-y le contenu :
Enregistrez-les puis redémarrez le serveur Apache.
Remarque :
Si une erreur est commise lors de la création d'un alias, il suffit de supprimer le fichier concerné pour retrouver la configuration d'origine.
Pour éviter de modifier ce fichier, WAMP propose par défaut un dossier Alias ( C:\wamp\alias\ )
Dans ce dossier, créez un nouveau fichier texte, nommez le : localhost.conf, puis copiez-y le contenu :
##### ## localhost ## DOMAINE principal ##### NameVirtualHost localhost <VirtualHost localhost> DocumentRoot C:/wamp/www/ ServerName localhost </VirtualHost>
Toujours dans le même dossier, créez un nouveau fichier texte et nommez le : monprojet.dev.conf, puis copiez-y le contenu :
##### ## monprojet.dev ## DOMAINE de monprojet ##### NameVirtualHost monprojet.dev <VirtualHost monprojet.dev> DocumentRoot C:/wamp/www/monprojet/ ServerName monprojet.dev </VirtualHost>
Enregistrez-les puis redémarrez le serveur Apache.
Remarque :
Si une erreur est commise lors de la création d'un alias, il suffit de supprimer le fichier concerné pour retrouver la configuration d'origine.
Et voilà !
Si tout s'est bien passé :
- en accédant à http://localhost/ vous retrouvez l'affichage "normal" du répertoire /www/
- en accédant à http://monprojet.dev/ vous devriez tomber directement sur votre projet, autrefois accessible à l'adresse http://localhost/monprojet/ (qui reste bien entendu accessible).
Vous savez maintenant comment faire pour rajouter autant d'hôtes virtuels que vous avez de projets en cours !
Compléments
Pour en savoir plus sur les hôtes virtuels sous Apache :
http://httpd.apache.org/docs/1.3/vhosts/
http://httpd.apache.org/docs/1.3/vhosts/