Navigation

Virtual hosts dans Wamp pour Symfony


Samuel Breton
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/

Show Comments (9)

Comments

  • thomas

    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.

    • Article Author
  • mike

    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

    • Article Author
  • thomas

    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!

    • Article Author
  • Hajer E.

    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

    • Article Author
  • Thomas

    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

    • Article Author
  • Karl3i

    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…

    • Article Author
  • Laulo

    Parfait !
    je peux enfin développer mes appli Symfony tout en continuant d’accéder à des appli autres que Symfony sans modifier à chaque fois les paramètres d’apache

    Excellente idée !

    Merci

    Bon réveillon !

    • Article Author
  • Garcia

    Bonjour à tous, j’ai un petit soucis qui devrait se corriger assez rapidement je pense, mais je ne suis pas assez connaisseur pour le résoudre…^^

    J’ai modifié mon fichier Hosts pour pouvoir éviter le nom de domaine de drupal à savoir : http://localhost/drupal.
    Maintenant j’ai effectué les modifications suivantes :127.0.0.1 localhost
    127.0.0.1 monsite.com
    Dès que je rentre l’adresse monsite.com dans ma barre de recherche, je tombe sur la page de Wamp, pour accèder à mon site il faut donc que je rajoute drupal à monsite.com, ce qui donne : monsite.com/drupal.

    Je voudrai alors savoir comment pouvoir acceder à mon site en tapant seulement monsite.com.

    Merci.

    • Article Author
  • NicoD

    Bonsoir,

    J’utilise un WAMP 2.0 (avec l’option « Put Online » activée) pour faire de l’hébergement sous Windows Server 2008. Afin de géré mes sous-domaine, j’ai rajouté, dans le httpd.conf (comme je le faisais avant pour mes serveur web sous linux), ceci :

     »
    NameVirtualHost *

    DocumentRoot « F:\aaa »
    ServerName aaa.NomDeDomaine.fr

    Options Indexes FollowSymLinks
    AllowOverride all
    Order Allow,Deny
    Allow from all

    DocumentRoot « F:\bbb »
    ServerName *.NomDeDomaine.fr

    Options Indexes FollowSymLinks
    AllowOverride all
    Order Allow,Deny
    Allow from all

     »

    Mais le premier virtualhost ne fonctionne pas, je tombe toujours dans le folder bbb. 🙁
    En supprimant le deuxième virtualhost, je me suis aperçu que WAMP n’aimait pas , que ça ne fonctionnait qu’avec .

    Dans ce cas, comment gérer les sous-domaines dans wamp ?

    Merci d’avance pour votre aide.

    • Article Author

Recevez nos articles