Installer E-venemement 2.x

source: km sur http://km.azerttyu.net/Installer-E-venemement-2-x

Pré requis

  • Un UNIX (GNU/Linux de préférence)
    • Apache 2
    • PHP 5
    • PostgreSQL >= 8.3
  • Se donner un accès super-utilisateur à PostgreSQL pour plus d'aisance

Pour la suite de nous considérerons que nous avons la main sur un serveur LAPP (dans notre cas une Debian).
De même, le répertoire home de l’utilisateur est considéré comme un répertoire web accessible depuis n’importe quel navigateur.

E-venement est une application Symfony, il est donc nécessaire d’obtenir :

Installer l’application

L’installation d’une application Symfony et de son environnement est assez simple. Il s’agit de dézipper les 2 archives précédemment obtenues :

serveur:~# wget http://www.symfony-project.org/get/symfony-1.4.15.zip
serveur:~# unzip symfony-1.4.15.zip
serveur:~# wget http://download.gna.org/e-venement/e-venement-2.0-rc2.tar.gz
serveur:~# tar -xvzf e-venement-2.0-rc2.tar.gz
serveur:~# ls
e-venement-2.0-rc2  e-venement-2.0-rc2.tar.gz  symfony-1.4.15  symfony-1.4.15.zip

Ensuite comme indiqué dans la documentation officielle, nous devons installer symfony comme bibliothéque de notre application e-venement.

serveur:~# mv symfony-1.4.15 e-venement-2.0-rc2/lib/vendor/symfony

Configurer PHP

Il est à noter que pour la suite de l’installation de symfony, la configuration de PHP est insuffisante, il faut augmenter sa mémoire disponible pour le mode CLI et le mode Apache

serveur:~# nano /etc/php5/cli/php.ini
memory_limit = -1
serveur:~# nano /etc/php5/apache2/php.ini
memory_limit = 512M

Configurer sa base de données

Les développeurs de e-venement préconise l’utilisation de PostgreSQL.
Son installation simple se fait via serveur:~# apt-get install postgresql ou bien apt-get install postgresql-8.4

Nous créons un compte et une base pour l’application :

serveur:~# createuser evenement -P
Saisissez le mot de passe pour le nouveau rôle :
Saisissez-le à nouveau :
Le nouveau rôle est-il super-utilisateur ? (o/n) o

Configurer Symfony

Pour que l’application puisse correctement fonctionner, 2 fichiers sont à mettre à jour :

  • config/autoload
  • config/database.yml
serveur:~# mv e-venement-2.0-rc2/config/autoload.inc.php.template e-venement-2.0-rc2/config/autoload.inc.php
serveur:~# mv e-venement-2.0-rc2/config/databases.yml.template e-venement-2.0-rc2/config/databases.yml

Enfin nous pouvons déclarer la base postgres précédemment créée :

serveur:~# nano e-venement-2.0-rc2/config/databases.yml
all:
 doctrine:
   class: sfDoctrineDatabase
   param:
     dsn: 'pgsql:host=localhost;dbname=evenement'
     username: evenement
     password: motdepasse

A cette étape nous venons de rendre l’application "éxecutable", c’est à dire que nous pouvons maintenant configurer à proprement parler l’application e-venement

Activer la base de données

Du fait que nous avons une application symfony, nous pouvons générer la structure et l’ensemble des données de la base via le module doctrine.

serveur :~/e-venement-2.0-rc2# php symfony doctrine:build --all --application=default

Si par la suite vous voulez réinitialiser la base de données ou utiliser un autre serveur de données, vous pourrez le faire en mettant à jour config/databases.yml et en relançant la commande précédente.

Attention à ce moment, il n’est pas encore possible de tester l’application, aucun compte utilisateur n’est encore disponible.

Créer un premier compte administrateur

C’est le module guard de symfony qui gére les comptes utilisateurs et leurs droits.
Pour commencer nous créons un compte utilisateur sans droit via :

serveur :~/e-venement-2.0-rc2# php symfony guard:create-user email@test.com evenement motdepasse
>> guard     Create user "evenement"

Nous pouvons maintenant le promouvoir administrateur ainsi :

serveur :~/e-venement-2.0-rc2# php symfony guard:promote evenement
>> guard     User identified by "evenement" username has been promoted as super administrator

Tester l’application

Enfin nous pouvons tester pour de vrai l’application. Il est possible de voir le rendu sur notre site de demonstration. Le compte test est evenement avec le mot de passe evenement. Une image pouvant parler mieux voici ce qui devrait être obtenu :

Problèmes connus

Recherche accentuée non fonctionnelle

Regarder la configuration d'Apache. Parfois un paramètre du type LANG=C est présent, ce qui entraîne une incapacité à interpréter correctement les accents lors des recherches. Pour remédier à cela, vérifier votre configuration d'Apache et changez toutes les variables de type LANG ou LC_* à fr_FR.UTF-8.

Sous Debian/Ubuntu, cela se trouve dans le fichier /etc/apache2/envvar ...

 


Ressources :

 

Search