Configuration des « vitual hosts » dans Wamp pour pouvoir gérer plusieurs projets Symfony.
Dans cet exemple nous allons configurer 2 sites :
- Site A :
Emplacement : c:\wamp\www\sf_projects\siteA
Host : siteA.local - Site B :
Emplacement : c:\wamp\www\sf_projects\siteB
Host : siteB.local
httpd-vhosts.conf
- Editer le fichier :
C:\wamp\bin\apache\Apache2.2.11\conf\extra\httpd-vhosts.conf
NameVirtualHost *:80 #Site A <VirtualHost *:80> ServerAdmin admin@siteA.com DocumentRoot "C:\wamp\www\sf_projects\siteA\web" ServerName siteA.local ServerAlias siteA.local ErrorLog "logs/siteA.localhost-error.log" CustomLog "logs/siteA.localhost-access.log" common Alias /sf C:\wamp\www\sf_projects\siteA\lib\vendor\symfony\data\web\sf </VirtualHost> #Site B <VirtualHost *:80> ServerAdmin admin@siteB.com DocumentRoot "C:\wamp\www\sf_projects\siteB\web" ServerName siteB.local ServerAlias siteB.local ErrorLog "logs/siteB.localhost-error.log" CustomLog "logs/siteB.localhost-access.log" common Alias /sf C:\wamp\www\sf_projects\siteB\lib\vendor\symfony\data\web\sf </VirtualHost> #Pour garder son localhost opérationnel <VirtualHost *:80> DocumentRoot "C:\wamp\www" ServerName localhost ServerAlias localhost </VirtualHost>
httpd.conf
- Editer le fichier :
C:\wamp\bin\apache\Apache2.2.11\conf\httpd.conf
- Décommenter la ligne :
#Include conf/extra/httpd-vhosts.conf
hosts
- Editer le fichier :
C:\WINDOWS\system32\drivers\etc\hosts
- Ajouter ces 2 lignes :
127.0.0.1 localhost siteA.local
127.0.0.1 localhost siteB.local
Voilà, redémarrez Wamp, et vos sites sont accessibles aux adresses suivantes :
http://siteA.local/
http://siteB.local/

dans l’étape ou l’on édite le fichier C:\wamp\bin\apache\Apache2.2.11\conf\extra\httpd-vhosts.conf.
Le code a coller est directement généré par Symfony dans votre projet /config/vhost.sample
qui est donc l’exemple pour le vhost… l’avantage c’est que les chemins vers votre projet sont les bons.
Bonjour
Merci pour cette astuce bien détaillée. Moi je suis novice sur symfony et j’ai essayé de créer le virtual host et tout fonctionne par contre l’@ localhost seule me renvoie à une page d’erreur et plus à la racine du repertoire www. Saurais tu comment remettre le lien stp?
Merci
Bonjour Mike,
pour le localhost il y ceci a ne pas oublier de rajoter dans le fichier C:\wamp\bin\apache\Apache2.2.11\conf\extra\httpd-vhosts.conf:
#Pour garder son localhost opérationnel
DocumentRoot « C:\wamp\www »
ServerName localhost
ServerAlias localhost
et dans ton fichier C:\WINDOWS\system32\drivers\etc\hosts,tu peux essayer d’écrire tes domaines sur une seule ligne :
127.0.0.1 localhost siteA siteB
au lieu de
127.0.0.1 localhost siteA
127.0.0.1 localhost siteB
en espérant que cela marche!
Bonsoir ,
Je voulais vous demander une question: est ce qu’il faut installer Symfony pour chaque projet qu’on désire créer?
J’explique:
j’ai suivi l’exemple de Jobeet, donc l’installation de symfony se trouve dans /home/sfprojects/jobeet/lib/vendor/symfony/data/bin
par la suite, j’ai voulu créer un autre projet Monprojet, est ce que je peux le créer sous /home/Monprojet sans être obligée de réinstaller symfony?
Merci d’avance
Bonjour @Hajer E.,
Effectivement sous Windows il te faut réinstaller symfony pour chacun de tes projets.
Sous Linux il suffit de faire un lien symbolique mais ceci n’existe pas sous Windows.
bonne continuation
Merci pour ce tuto efficace, et qui est valable en-dehors de tout contexte Symfony également.
Sinon, d’après mes tests, il faut absolument que DocumentRoot des virtual hosts soit un sous-répertoire du DocumentRoot principal (et pas un répertoire complètement différent).
Enfin, en mettant C:/ comme DocumentRoot dans le httpd.conf, je tombe quand-même sur l’index.php de C:/wamp/www en tapant http://localhost. Ca ne me dérange pas, mais je ne m’attendais pas à ce comportement…