dernière mise à jour : 16/12/2024
Dans la suite nous supposerons que si vous avez un proxy, vous l'avez au préalable paramètré sur le serveur.
export http_proxy=proxy_url:proxy_port
export https_proxy=proxy_url:proxy_port
Le code du projet est déposé sur le serveur git et est opensource : https://git.unicaen.fr/open-source/mes-formations.git
.
Par conséquent, vous n'avez pas besoin d'être authentifier pour cloner le projet.
user@kmes-formations-crashtest:/var/www/html$ git clone https://git.unicaen.fr/open-source/mes-formations.git html
composer update
Pour information sur le serveur de test nous avions la version suivante
composer about
#Composer - Dependency Manager for PHP - version 2.8.4
Les fichiers de configuration locaux vous permettent de paramètrer et d'ajuster le comportement de l'application.
Des copies (avec l'extension .dist
) sont mises à disposition dans le répertoire des fichiers de configuration de l'application (./config/autoload
)
Vous devez les renommer et paramètrer ceux-ci en fonction de votre installation.
mv ./config/autoload/FICHIER.local.php.dist ./config/autoload/FICHIER.local.php
...
Voici la liste des fichiers :
database.local.php
: paramètrage des base de donnéeslocal.php
: configuration du reporting des erreursunicaen-app.local.php
: paramètrage de quelques liens du pieds de pageunicaen-authentification.local.php
: mode d'authentification et usrupationunicaen-evenement.local.php
: temps maximal d'execution des événementsunicaen-fichier.local.php
: paramètrage du répertoire d'uploadunicaen-ldap.local.php
: paramètrage de connextion au ldap et des attributs exploitéssynchro.local.php
: paramètrage de la synchronisation des données du SI vers Mes Formationsunicaen-mail.local.php
: paramètrage de l'envoi de courrier électronique
Des constantes en haut de ce fichier sont là pour simplifier le paramètrage.
Attention, deux bases de données sont à renseigner : la base de l'application (variables préfixées par DB_
) et la base contenant les données du SI (variables préfixées par DB_SYNCHRO_
).
Ce fichier permet de paramettrer les moyens d'authentifications fournit aux usagers. Ils peuvent être activés/désactivés et ordonnés comme vous le souhaités.
Parmi ces modes, on retrouve :
- CAS
- ldap et comptes locaux
- shiboleth
La liste des utilisateurs autorisés à usurper est aussi défini dans ce fichier dans la clef usurpation_allowed_usernames
.
Il faut préciser dans ce tableau la liste des identifiants de connexion des utilisateurs ayant ce privilège.
Ce fichier contient des redondances, un travail est en cours pour factoriser celles-ci.
La documentation de cette partie peut-être trouvée ici : connecteur.md
On retrouve dans ce fichier la liste des groupes de mail avec à chaque fois les données suivantes :
do_not_send
si à true alors les mails ne seront pas envoyésredirect
si à true alors tous les mails seront redirigés aux adresses renseignées dansredirect_to
redirect_to
un tableau contenant les adresses vers qui redigierer les mailssubject_prefix
préfixe qui sera ajouté en entête des mails[subject_prefix]
from_name
le nom affiché comme expéditeurfrom_email
l'adresse présenté comme expéditrice (est recommandée ici une adresse sans quota ou whitelistée)
L'application a besoin de deux répertoires de stockage :
- data/DoctrineORMModule/Proxy : zone d'échange pour les interactions avec la base de données
- upload : zone de dépôt de l'application
Ce répertoire est fixe dans l'application mais ne devrait pas être trop volumineux.
mkdir -p data/DoctrineORMModule/Proxy
chmod 777 data/DoctrineORMModule/Proxy
Ce répertoire peut être déplacé à l'endroit que vous le souhaiter. Son chemin est défini dans le fichier de configuration onfig/autoload/unicaen-fichier.local.php
.
Attention, celui-ci peut devenir rapidement volumineux (prévoyer un stockage de quelques dizaines de Go.
Même procédure de création :
mkdir -p mon_repertoire_upload
chmod 777 mon_repertoire_upload
La création des tables (et la mise à jour de leur structure) passe par l'utilisation de la bibliothèque unicaen/bdd-admin
(qui a été instalée par composer
).
Pour créer les tables (ou les mettre à jour) vous pouvez utiliser la commande suivante :
./vendor/bin/laminas update-bdd
Les données initiales à inserer sont mise à disposition dans le repertoire database/script. Veuillez exécuter les scripts dans l'ordre lexicographique.
La synchronisation est faites par la bibliothèque unicaen/synchro
(qui a été instalée par composer
).
Pour créer les tables (ou les mettre à jour) vous pouvez utiliser la commande suivante :
php public/index.php synchroniser-all
Pour initialiser le premier administrateur, il faut que celui-ci se connecte une première fois.
Puis de mettre dans la table de linker unicaen_utilisateur_role_linker
la ligne reliant son utilisateur (enregistré dans unicaen_utilisateur_user
) et son rôle (enregistré dans unicaen_utilisateur_role
).
Une fois connecté en tant qu'administrateur, vous aurez accés à deux menu pour vérifier l'installation :
- Administration > Vérification installation : pointe les atttendus
- Administration > Vérification php : présente le
php_info
Symptôme: Les utilisateurs se font déconnecter au bout d'une période relativement courte (24 minutes).
Cause : Dans la vérification php, les variables locales cookie_lifetime
et gc_maxlifetime
ne sont pas à 0 (note: 1440 secondes = 24 minutes)
Solution : Il est possible de corriger ces valeurs dans le fichier /etc/php/8.2/fpm/php.ini
.
Nécessite un redémarage de fpm.