(Ce tuto est basé sur Pratical Symfony de la documentation officielle de Symfony)
INSTALLATION DE SYMFONY 1.4
Il faut tout d'abord vérifier que les composants suivants sont présents sur la machine :
- Un serveur web (apache par exemple)
- Un moteur de base de données ( MySQL, PostgreSQL, SQLite, ou tout autre moteur de base de données PDO-compatible)
- PHP >=5.2.4
Configuration de PHP
Assurez vous que PHP 5.2.4 au minimum est installé grâce à la commande php -v.
$ php -v
Si vous disposez plutôt de lampp, rendez vous dans le répertoire lampp puis tapez les commandes suivantes :
Assurez vous d'être bien dans le répertoire de lampp avant d'effectuer la manip' suivante!
$ alias php='bin/php'
Ensuite
$ php -v
Ensuite
$ php -v
Sinon si vous ne disposez pas non plus de lampp installez php5-cli. Sous Ubuntu faire :
# sudo apt-get install php5-cli
Ensuite
$ php -v
Créez le répertoire sfprojects
$ mkdir -p ~/sfprojects
Téléchargez le fichier de configuration php
$ wget -P ~/sfprojects http://sf-to.org/1.4/check.php
Lancez le script
$ php ~/sfprojects/check_configuration.php
En général il n'y a pas vraiment d'erreurs rencontrées à ce niveau. Si toutefois vous bloquez ici, la sortie de cette commande devrait pouvoir vous fournir les informations pour résoudre le problème.
Installation de symfony
- Création du répertoire qui abritera tous les fichiers du projet
$ mkdir -p ~/sfprojects/jobeet
- Choix du lieu d'installation
On choisira de rendre nos projets indépendants les uns des autres, on intègrera donc symfony dans chacun de nos projets (méthode conseillée par le tutoriel officiel).
$ mkdir -p ~/sfprojects/jobeet/lib/vendor
- Téléchargement de symfony
$ wget -P ~/sfprojects/jobeet/lib/vendor/ http://www.symfony-project.org/get/symfony-1.4.1.tgz
$ cd ~/sfprojects/jobeet/lib/vendor/
$ tar zxpf symfony-1.4.1.tgz
$ mv symfony-1.4.1 symfony
$ rm symfony-1.4.1.tgz
- Vérification de l'installation
On vérifie la version de Symfony pour s'assurer que tout fonctionne (Notez la majuscule V).
$ php symfony/data/bin/symfony -V
Création du Jobeet (Exemple de projet tiré du tutoriel pratical symfony)
Génère la structure des répertoires et fichiers nécessaires pour un projet symfony.
$ cd ~/sfprojects/jobeet/
$ php ~/sfprojects/jobeet/lib/vendor/symfony/data/bin/symfony generate:project jobeet
- Création de l'application front-end
$ php symfony generate:app frontend
- Attribution des droits d'écriture et de lecture sur les répertoires cache/ et log/ au serveur web
$ chmod 777 cache/ log/
- Configuration du serveur web
Localisez le fichier httpd.conf
$ locate httpd.conf
Si vous ne disposez pas d'un serveur web, la commande locate ne renverra aucun résultat. Nous allons donc installer un serveur apache.
# sudo apt-get install apache2
# sudo apt-get install libapache2-mod-php5
On met à jour la base de donnée des fichiers.
# sudo updatedb
Ensuite on localise le fichier httpd.conf (il se trouve normalement dans /etc/apache2/httpd.conf)
$ locate httpd.conf
Éditez le. (Changez chemin par le résultat que vous avez obtenu grâce à la commande locate)
# sudo gedit /chemin/httpd.conf
par exemple
# sudo gedit /etc/apache2/httpd.conf
Copiez ces lignes à la fin du fichier en prenant soin de changer utilisateur par votre nom d'utilisateur.
# Soyez sûr d'avoir seulement cette ligne une fois dans votre configuration
NameVirtualHost 127.0.0.1:8080
# C'est la configuration pour votre projet
Listen 127.0.0.1:8080
<VirtualHost 127.0.0.1:8080>
DocumentRoot "/home/utilisateur/sfprojects/jobeet/web"
DirectoryIndex index.php
<Directory "/home/utilisateur/sfprojects/jobeet/web">
AllowOverride All
Allow from All
</Directory>
Alias /sf /home/utilisateur/sfprojects/jobeet/lib/vendor/symfony/data/web/sf
<Directory "/home/utilisateur/sfprojects/jobeet/lib/vendor/symfony/data/web/sf">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>
Redémarrez le serveur apache.
# sudo /etc/init.d/apache2 restart
Votre projet sera donc accessible à l'adresse http://localhost:8080/
Pour le prochain tuto, Je passerai directement au Jour 3 du Pratical Symfony car c'est surtout à ce niveau que les utilisateurs novices rencontrent le plus de problèmes. Pour plus de détails sur ce tutoriel voir la documentation officielle (très complète).
2 commentaires:
Parfait !
J'attends avec impatience la suite ...
Merci
Très bonne initiative!
Enregistrer un commentaire