Virtual hosts dans Wamp pour Symfony

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/

    

6 Responses to “Virtual hosts dans Wamp pour Symfony”

  1. thomas dit :

    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.

  2. mike dit :

    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

  3. thomas dit :

    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!

  4. Hajer E. dit :

    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

  5. Thomas dit :

    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

  6. Karl3i dit :

    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…

Laisser un commentaire

Security Code: