A mes débuts sous symfony, j’ai eut un peu de mal à l’installer pour la première fois sous MAC OS. et après avoir fait un petit tour sur le net, je me suis rendu compte qu’il n y avait pas un tutorial bien expliqué pour réaliser cette tâche correctement ( Ceux que j’ai suivi ne marchait pas dans mon cas ). C’est pour cette raison je me suis dit qu’il fallait écrire un article pour permettre aux débutants sur symfony d’effectuer cette tâche assez rapidement.
Tout d’abord, il faut savoir que pour installer Symfony, il existe plusieurs méthodes. Là je vais vous montrer une d’elle, l’installation via Pear.
a) Configuration de l’environnement (MAMP) :
1- Commencer par installer MAMP.
2- Lancer Mamp (Applications/MAMP/MAMP) puis aller « dans préférences » : Configurer le dossier dans l’onglet « Apache » comme suit : /Users/Votre-Pseudo-MAC/Sites. Réinitialiser ensuite les ports Apache et MySql avec les numéros de ports par défaut respectivement 80 et 3306 (dans l’onglet « Ports »).
3- Maintenant il faut changer la limite mémoire par défaut dans php.ini que vous trouverez dans le dossier /Applications/MAMP/conf/php5/php.ini et changer la valeur de memory_limit à 32 Mo.

4- Ensuite on doit indiquer à votre terminal que la bonne version de PHP à utiliser, comme suit :
- Ouvrez le terminal terminal (Applications/Utilitaires/Terminal).

- Taper la commande suivante (Ouvrir bash_profile, pour ajouter une variable d’environnement)
$ sudo vim .bash_profile
entrer votre mot de passe root si nécéssaire.
- Insérer ensuite cette ligne à la fin du fichier (pour entre en mode insertion taper « i »
PATH=/Applications/MAMP/bin/php5/bin:$PATH export PATH
- sauvegarder les modifs « :wq »
b) Installation de Symfony :
1- Vous êtes donc prêts à installer Symfony, redémarer votre terminal puis taper la commande suivante pour initialiser le channel de téléchargement Pear :
$ pear channel-discover pear.symfony-project.com
2- Vous pouvez maintenant lancer l’installation comme suit:
$ pear install symfony/symfony
$ pear install --alldeps http://phing.info/pear/phing-current.tgz
3- Tapez « symfony » dans votre terminal pour vérifier que tout s’est bien passé, vous verrez normalement la liste de toutes les commandes de Symfony.
et naturellement pour finir, je vous faire l’équivalent du « HelloWorld » pour symfony (càd un projet vierge).
c) Création et Configuration d’un nouveau projet :
1- Aller dans le dossier /Users/Votre-Pseudo-Mac/Sites et créer un dossier pour votre projet (ça sera « MonProjet » pour le tutorial)
2-Vous devez ensuite créer un VirtualHost pour votre projet (ce n’est pas obligatoire dans une installation locale de Symfony, mais c’est conseillé pour bénéficier des modules et styles par défaut de symfony) et ceci comme suit :
- Ouvrez le fichier /Application/MAMP/conf/Apache/htpd.conf et ajouter ceci à la fin du fichier :
<VirtualHost *>
ServerName monprojet.Localhost.com
DocumentRoot "/Users/votre-pseudo-mac/Sites/MonProjet/web"
DirectoryIndex index.php
Alias /sf /Applications/MAMP/bin/php5/lib/php/data/symfony/web/sf
<Directory "/Applications/MAMP/bin/php5/lib/php/data/symfony/web/sf">
AllowOverride All
Allow from All
</Directory>
<Directory "/Users/votre-pseudo-mac/Sites/MonProjet/web">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>
Il reste à ajouter au fichier etc/hosts la ligne suivante :
127.0.0.1 MonProjet.localhost.com
Puisque c’est un fichier caché, vous devez le faire grâce au terminal :
$ cd /etc
$ sudo vim hosts
Ensuite insérer la ligne (commande « i » pour le mode d’insertion puis sauvegarder « :wq! »)
3- Passons maintenant à « Symfony » proprement dit. Ouvrez le terminal (ou redémarrez le s’il est ouvert) et tapez la commande suivante :
$ cd Sites/MonProjet
3- Initialiser le projet Symfony, comme suit :
$ symfony generate:project MonProjet
4- Initialiser l’application Symfony, comme suit :
$ symfony generate:app frontend
Voila vous avez terminé, vous pouvez maintenant tester votre projet en accèdant à l’adresse MonProjet.localhost.com depuis votre navigateur.
Bon courage à tous.
PS: n’oubliez pas de changer mon-pseudo-mac et MonProjet avec vos propres informations.

Pingback: rpsblog.com » A week of symfony #85 (11->17 august 2008)
Pingback: Propel, la puissante couche d’abstraction de Symfony | Youknowriad, blog du caméléon de l'informatique
Merci infiniment :bien:
$pear channel-discover pear.symfony-project.com
Il me met command not found je ne comprend pas…
@thomas ceci veux dire que l’extension pear n’est pas installé sur ta machine ou que la variable d’env n’est pas bien sétté
si tu es sous mac et que tu as suivi le tuto bien comme il faut, tu ne devrais pas avoir ce pb. Sinon dis nous plus sur ta configuration.
non en fait j’ai reussi …
je mettais $pear channel-discover pear.symfony-project.com
au lieu de pear channel-discover pear.symfony-project.com
ca marche moins bien
En tous cas merci pour le tuto, j’ai pu installer. Mais l’utiliser c’est une autre paire de manche…
Je comprend pas énorme
Nikel le tuto
Juste une petit chose, un moment de l’installation de symfony avec Pear, il vaut mieux utiliser cette ligne :
#—
pear install symfony/symfony-1.2.8
#—
Cela permet d’avoir la dernière version à jour de symfony.
@Arnaud Merci pour la correction, (le tuto date un peu
)
Le tuto date un peu mais il m’a été bien utile.
Super ! Merci pour ce tutoriel clair et complet !
Merci pour ton article. Néanmoins, chez moi, tous les fichiers ne sont pas générés. Par exemple, le fichier css est vide et le dossier images sont vides.
As tu une idée?
Merci
Merci beaucoup pour ce tuto vraiment très bien fait !
tout se fait en le suivant à la lettre.
vraiment du très bon travail pédagogique.
Encore bravo et merci
j’oubliais 2 petites choses qu’il faudrait ajouter :
- après l’étape PATH=/Applications/MAMP/bin/php5/bin:$PATH export PATH dans le fichier .bash_profile, pour pouvoir sauvegarder et sortir il faudrait préciser qu’il faut appuyer sur la touche «esc» et ensuite saisir « :wq » (utile pour ceux qui ne connaissent pas VI.
- enfin, une fois que tout est fait, ça parait logique mais bon, il est utile de préciser qu’avant de se connecter à MonProjet.localhost.com il faut bien entendu… redémarrer Apach
je m’excuse mais en tapant » pear channel-discover pear.symfony-project.com »
il me dit : « Command ‘pear.synfony-project.com’ is not valid, try ‘pear help’
pourriez vous me dire quoi faire?
@montassar je pense que tu as mis symfony avec un ‘n’ au lieu du ‘m’ dans pear.symfony-project.com
@youknowriad: merci pour ta réponse mais il pareil que c’est pas ça le problème parce que j’ai vérifier à plusieurs reprises mais c’est toujours le même message d’erreur qui s’affiche
@montassar je ne sais pas de quoi ça peut venir, mais ce que je peux te conseiller sinon, c’est d’installer la version sandbox de symfony.
Il suffit juste de dézipper l’archive dans le dossier www de ton apache (MAMP)
Un grand merci pour ce tuto. Simple et parfait.
Bonjour, merci pour ce tuto, j’ai un souci au niveau de taper au terminal :
pear channel-discover pear.symfony-project.com
J’ai ce message d’erreur :
Unable to create file /usr/lib/php/.lock because Permission denied in PEAR/Registry.php on line 835
Warning: touch(): Unable to create file /usr/lib/php/.lock because Permission denied in /usr/lib/php/PEAR/Registry.php on line 835
could not create lock file: fopen(/usr/lib/php/.lock): failed to open stream: No such file or directory
J’adore Symfony mais j’avoue que sa documentation est parfois étrangement présentée… Une explication step by step comme cette dernière trouverai parfaitement sa place sur le site du projet.
De peur de répéter ce qui à déjà été dit, « simple et parfait »!
Un grand merci !
Bonjour, j’ai le même soucis que john :
Warning: touch(): Unable to create file /usr/lib/php/.lock because Permission denied in PEAR/Registry.php on line 835
Warning: touch(): Unable to create file /usr/lib/php/.lock because Permission denied in /usr/lib/php/PEAR/Registry.php on line 835
could not create lock file: fopen(/usr/lib/php/.lock): failed to open stream: No such file or directory
Je ne sais pas d’où vient mon erreur,
Est-ce que quelqu’un aurait une idée?
Merci d’avance…
Met toi en admin !!
tape : sudo su
Et tu verra que t’aura des permissions lors de l’exécution de tes future commandes.
Bonsoir,
au fait je suis débutant en symfony(Doctrine), au fait j’aimerais inserer des données d’un formulaire sur 2 tables différentes.si quelqu’un pourait m’aider ou me donner une adress qui explique le sujet.
Merci
@Elegna et pour les autres qui auraient ce pb :
C’est la variable d’environnement qui n’a pas été enregistrée (du moins pas correctement)
Bonjour,
je me pointe un peu tard, mais si vous êtes comme moi et avec la toute dernière version de Mamp, les instructions ci dessus ne vont pas vous aider pour installer Pear, j’ai chercher partout, et ce billet (http://www.tumblr.com/tagged/mamp) rechercher le post intitulé : « PHP, Pear, and phpUnit with MAMP Pro » et suivez les instructions, moi ça c’est déroulé sans problèmes.
Bon maintenant, je n’ai pas encore installer Symfony, je m’y recolle
/-)
C’est re-moi,
Ouf ! http://monprojet m’affiche la belle page par défaut de Symfony.
Mais pas sans mal, car MAMP dans sa dernière version donc à ce jour la V2
n’a pas les mêmes chemin que ce qui est décrit ici.
Pour info je suis sous Mac OS Lion pour ceux qui se demanderait si ce que j’ai fait marcherait sur cette nouvelle version, donc Snow Leopard ne devrait pas poser de pb.
1er point: installation de PEAR : http://www.tumblr.com/tagged/mamp
2ème point : l’ajout des bons chemins PHP ET DE PEAR :
- Donc, oui, lancer le Terminal : sudo vim .bash_profile
- Et rentrer les 2 lignes ci-dessous :
La 1ère c’est pour le chemin à PHP.
La seconde c’est pour accéder de n’importe où à PEAR dans le terminal.
PATH=/Applications/MAMP/bin/php/php5.3.6/bin:$PATH export PATH
alias pear=/Applications/MAMP/bin/php/php5.3.6/bin/pear
ps : fermer le terminal et le réouvrir pour que les chemins soient « compris »
3ème point : installation de Symfony
Comme je veux la dernière version et ne pas me tromper, je suis aller lire la procédure ici : http://www.symfony-project.org/installation/1_4
Mais pour résumer il n’y a que deux lignes à taper :
pear channel-discover pear.symfony-project.com
pear install symfony/symfony-1.4.15
4ème point :
Et c’est là où j’ai bloqué un moment en suivant le tuto ici, car désormais le dossier de travail de Symfony est situé sous MAMP/htdocs ! Alors si vous essayez de créer un projet, comme indiqué dans votre tutot, dans /users/profilUtilisateur/sites/… Symfony va vous jetter en vous disant exactement ceci : « You must be in a symfony project directory. » donc il faut :
- se loguer en admin :
sudo su
- Créer le dossier de votre futur projet et y aller :
cd /Applications/MAMP/htdocs
mkdir monprojet
cd monprojet
- Créer le projet Symfony
symfony generate:project monprojet
symfony generate:app frontend
5ème point : configuration d’un virtualhost
Si MAMP est lancé, stoppez donc les serveurs sinon vous ne pourrez par modifier le fichier httpd.conf (/Applications/MAMP/conf/apache)
- Ajoutez ceci tout à la fin du fichier :
NameVirtualHost *
ServerName monprojet
DocumentRoot « /Applications/MAMP/htdocs/monprojet/web »
DirectoryIndex index.php
Alias /sf /Applications/MAMP/bin/php/php5.3.6/lib/php/data/symfony/web/sf
AllowOverride All
Allow from All
AllowOverride All
Allow from All
6ème point : ajout dans le fichier /etc/hosts
Rajouter seulement ceci :
127.0.0.1 monprojet
7ème point : redémarrer les serveurs MAMP
7ème et dernier point : accéder à http://monprojet et hop ! Voilà la belle page par défaut d’un nouveau projet.
En espérant avoir été utile….
@pascal en effet mon article commence à se faire vieux, merci pour le partage
De rien mais bon… c’est vraiment un truc de malade Symfony, j’en suis à la 3ème page du tuto « Jobeet » http://www.symfony-project.org/jobeet/1_4/Doctrine/en/03 et vraiment c’est à s’arracher les cheveux.
Je vois toujours pas, mais vraiment pas encore, l’utilité de symfony, enfin son concept, oui, mais alors toutes ces lignes de commandes, qui changent en fonction de l’os linux/windows/mac/etc..
Je comprends que si c’est vraiment un produit phrare pout développer un site et gagner en productivité il n’existe pas d’interface graphique d’installation/d’utilisation/paramétrage.
Chui pourtant un « vieux à cuir » des lignes de commandes ayant commencé avec des msdos 3, mais bon…
@pascal A vrai dire Symfony 1.4 commence à se faire vieux aussi, tu devrais te tourner vers Symfony 2 http://symfony.com
chui vert… la honnnnnnnnnnnnnnte !
Je m’étais simplement arrêter à ma 1ère recherche Google et n’avait pas vu cette V2…
Bon… une question alors :
Tu as déjà mis en œuvre ou tester cette dernière ? Si, oui quel est ton retour d’expérience ?
Merci
@pascal ouai j’ai déjà utilisé Symfony 2 pour un projet, j’ai trouvé ça pas mal, d’ailleurs je viens d’écrire un article dessus, ça peut peut être t’intéresser http://blog.riadbenguella.com/bloginy-3-symfony-2-retour-dexperience/
Merci pour le tuto mais il n’est pas récent du tout…
Après quelques tentative et beaucoup de recherche, pas mieux que le site de symfonie pour une bonne installation :
http://symfony.com/doc/current/book (3eme lien Installing and Configuring Symfony)