A l'instar de RoR, Symfony est basé sur le motif de conception MVC et utilise une couche d'abstraction d'accès aux données et d'implémentation AJAX. Il est développé en PHP5 par une équipe française, cocorico !
Voyons ensemble comment installer la bête sur une Ubuntu Dapper Drake toute fraîche.
Installation de Symfony
Le meilleur moyen d'installer Symfony mais surtout de le maintenir à jour est d'utiliser le canal PEAR [1] propre au projet. Mais avant tout, vérifions que nous disposons d'un environnement de développement ad-hoc :
$ sudo apt-get install php5 php5-cli php5-mysql php-pear
Le gestionnaire de paquets apt se chargera d'installer les dépendances nécessaires, notamment apache2.
L'installation du canal Symfony nécessite que nous octroyions 16Mo de mémoire vive à PHP. On édite donc le fichier /etc/php5/cli/php.ini et on affecte la nouvelle valeur :
memory_limit = 16M
Bien. Maintenant, installons Symfony et Phing [2] via PEAR :
$ sudo pear upgrade PEAR && sudo pear channel-discover pear.symfony-project.com
$ sudo pear install symfony/symfony
$ sudo pear install --alldeps http://phing.info/pear/phing-current.tgz
OK, ceci fait, on crée un nouveau projet Symfony, que nous baptiserons sobrement monprojet, disposant d'une application monapplication et que nous stockerons sous le docroot /var/www/monprojet :
$ sudo -s
# mkdir /var/www/monprojet
# cd /var/www/monprojet
# symfony init-project monprojet
# symfony init-app monapplication
Voila, notre arborescence Symfony vient d'être créée, on peut commencer à développer ! Non ? Mince, on a oublié de configurer Apache2 
Configuration d'Apache 2
Tout d'abord, activez mod_rewrite :
$ sudo a2enmod rewrite
Ensuite, nous allons créer rapidement un vhost apache, qui pointera benoitement vers dev.monprojet.com (redirigé vers notre hôte local.) Pour cela, éditez votre fichier /etc/hosts et sur la ligne comprenant l'adresse IP 127.0.0.1, ajoutez dev.monprojet.com :
127.0.0.1 localhost localhost.localdomain mamachine dev.monprojet.com
On crée maintenant l'hôte virtuel Apache /etc/apache2/sites-available/dev.monprojet.com dont voici le contenu :
<Directory "/usr/share/php/data/symfony/web/sf">
AllowOverride All
Allow from All
</Directory>
<VirtualHost *>
ServerName dev.monprojet.com
DocumentRoot "/var/www/monprojet/web"
DirectoryIndex index.php
Alias /sf /usr/share/php/data/symfony/web/sf
<Directory "/var/www/monprojet/web">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>
On active l'hôte virtuel nouvellement créé :
$ sudo a2ensite dev.monprojet.com
... et on relance apache :
$ sudo apache2ctl restart
Une dernière petite chose, il faut desactiver les magic_quotes de PHP, dans le fichier /etc/php5/apache2/php.ini :
magic_quotes_gpc = Off
Lancez votre navigateur sur http://dev.monprojet.com, vous devriez obtenir un message du genre :
If you see this page, it means that the creation of your symfony project on this system was successful.
Plus d'informations
Edit du 25 juin 06: Nouvelle version 0.6.3
La version 0.6.3 est sortie. Pour mettre à jour :
$ sudo pear upgrade symfony/symfony
Edit du 26 juin 06 :
Mon camarade de jeu Xavier Lacot vient de publier sur son blog un excellent tutorial dédié à Symfony.