Académique Documents
Professionnel Documents
Culture Documents
Page 1/13
Administrer une instance Agora
Répertoire Contenu
/afficher Les squelettes par défaut
/ecrire/include/authorization Le programmes de gestion des droits
utilisateurs
/ecrire/include/bd Les classes métier
/ecrire/include/bd/common Les drivers de base de données à la
norme SQL 92
/ecrire/include/bd/mysql Implémentation spécifique des classes
métiers
/ecrire/include/bd/DBWrapper2 L'ensemble des classes d'analyse des
modèles de page
/ecrire/include/bd/ldap3 Les méthodes métiers de gestion des
auteurs stockés sous LDAP
/ecrire/include/bd/NestedSetHelper Contient une classe d'aide à la gestion
de l'arborescence de mot clé
/ecrire/include/NestedSet Réimplémentation du package
PEAR ::DB_NestedSet
/ecrire/include/sevenseas L'abstraction de moteur d'indexation
externe
/ecrire/lang Les fichiers de langue pour le
multilinguisme de l'interface
/ecrire/squelettes_newsletter Les squelettes des newsletters
Page 2/13
Administrer une instance Agora
Il est déconseillé d'utiliser en production les modèles de pages livrés en standard, car bien qu'illustrant
chacune des fonctionnalités du logiciel, elles sont peu optimisées pour la performance. Un webmestre
qui réaliserait des tests à partir d'une version tout juste installée obtiendrait une image faussement
défavorable.
Les modèles de pages livrés par défaut sont conçus à titre d'exemple pour un usage pédagogique et
non pour l'exploitation. Ils intègrent de manière récursive tous les éléments possibles et, de ce fait,
génèrent une charge excessive.
Ci-après les résultats de deux tests de montée en charges réalisés avec l'utilitaire Apache Bench (livré
dans toute les distributions du serveur Apache). Le premier test porte sur une version 1.3.1, juste
après installation. Le second, sur la version en exploitation, avec des modèles de pages réels (et
réalistes) correspondant au site www.handicap.gouv.fr.
On voit ainsi qu'en configuration réelle Agora tient raisonnablement la charge. Le gain par rapport
aux modèles de page standard est d'un facteur 100.
Page 3/13
Administrer une instance Agora
Si vous souhaitez utiliser Agora pour un site volumineux et à fort trafic, adoptez ces deux règles
simples pour $delais (délai de rafraîchissement d'un modèle de page) :
- plus la page est consultée, plus son délai devrait être court ;
- les délais des sous-modèles de page ne doivent pas être plus courts que le modèle de page principal
dans lequel ils sont inclus.
Agora est "gourmant" lorsqu'il n'utilise pas le cache : il nécessite au minimum 16Mo de mémoire
pour les processus php (à modifier dans php.ini), ouvre plus de 1~000 fichiers lorsqu'une page est
recalculée et génère de nombreuses requêtes à la base de données, notamment dans le cadre de
modèles de page complexes. Prévoyez une quantité importante de RAM sur le serveur de production.
Page 4/13
Administrer une instance Agora
Vous serez éventuellement amené à le manipuler si par exemple vous déplacez une instance d'Agora
d'un emplacement à un autre, ou si vous changez de base de données. Cela évite d'avoir à repasser par
l'installation.
A l'inverse, si vous effacez ce fichier, vous pouvez forcer la réinstallation d'Agora sans avoir à
redéposer les fichiers, en accédant à /ecrire avec votre navigateur.
Variable Descriptif
$dbType~=~'mysql' Type du SGBD, mysql dans la majorité
des cas
$dbLogin~=~'agora' Login d'accès à votre base de donnée
$dbPassword~=~'agora' Mot de passe d'accès à votre base de
données
$dbHost~=~'localhost' Nom du serveur de votre base de
données. Usuellement localhost si elle
est sur le même serveur que les fichiers.
$dbName~=~'agora_test' Nom de votre base de données
$bd_options['persistent']~=~false Règle la persistance des connexions de
base de données : <tt>false</tt> est
l'option par défaut, <tt>true</tt> ou toute
autre valeur rend les connexions
persistantes
Important : dans les distributions d'Agora antérieure à la version 1.3.2, une faute de frappe rendait
inopérante l'option $bd_options['persistent'] et pouvait générer la saturation du serveur en cas de
grande charge. La valeur était 'false' (avec des guillemets). Pour rétablir la valeur false, retirez les
guillemets. Plus de détails sur le site PEAR . Notez enfin que l'utilisation de cette option peut varier
d'un environnement à l'autre. Vos commentaires et retours d'expérience sont les bienvenus.
Page 5/13
Administrer une instance Agora
Le menu "Administration du site / Vider le cache" propose d'effacer les index pour remettre à zéro les
données du moteur de recherche.
Pour réindexer tout le contenu du site en une seule fois, lancez le script index_all.php en ligne de
commande :
Page 6/13
Administrer une instance Agora
L'URL de votre site se règle dans le menu 'Administration du site', bloc "Nom de votre site", champ
"adresse (URL) du site public".
Si vous perdez l'accès à l'espace privé, modifiez cette valeur dans le champ adresse_site de la table
spip_meta de votre base de données.
Page 7/13
Administrer une instance Agora
La gestion des droits d'Agora repose sur l'affectation d'une valeur, ou poids, à chaque profil
utilisateur :
Profil poids
visiteur 1
rédacteur 2
rédacteur en chef 4
webmestre 8
administrateur 16
poids intitule
0 texte_statut_poubelle
2 item_redacteur
4 item_redacteur_en_chef
8 item_webmestre
16 item_administrateur
1 item_non_abonne
<?php
// ....
$actiondb["creerArticle"]=2;
$actiondb["supprimerBreve"]=8;
$actiondb["refuserBreve"]=4;
$actiondb["modifierBreveApresPublication"]=4;
$actiondb["creerBreve"]=2;
$actiondb["modifierBreveAvantPublication"]=2;
$actiondb["afficherAuteursVisiteurs"]=16;
// ...
?>
En comparant les poids des profils et des actions, on voit par exemple que la création d'article est
Page 8/13
Administrer une instance Agora
autorisée à partir du profil Rédacteur, tandis que le refus d'une brève ne peut intervenir qu'à partir du
profil rédacteur en chef.
Pour modifier les droits, vous pouvez directement modifier les valeurs dans ActionDB_common.php.
Cependant, vos modifications seront perdues en cas de réinstallation d'Agora (lors d'une mise à
niveau par exemple).
Il vaut mieux créer votre propre fichier d'autorisations. Dupliquez le fichier ActionDB_common.php
et renommez-le en, par exemple,
ActionDB_perso.php. Vous pouvez alors porter les droits que vous voulez en modifiant les poids
associés aux actions.
Vous devez ensuite déclarer son existence pour qu'il soit lu par l'application. Ajoutez dans le fichiers
ecrire/mes_options.php3
$GLOBALS['type_authorization'] = "perso ";Pour finir, effacer les fichiers de cache des
autorisations par profil :
ecrire/data/auth_1.php
ecrire/data/auth_2.php
ecrire/data/auth_4.php
ecrire/data/auth_8.php
ecrire/data/auth_16.phppuis déconnectez/reconnectez-vous pour forcer la relecture des droits et
la création de nouveaux fichiers de cache.
Page 9/13
Administrer une instance Agora
Les chaînes de langue sont rangées dans les fichiers du répertoire /ecrire/lang et ainsi nommées :
chapitre_langue.php3
Les langues en suffixe sont codées selon les top level domain ISO Internet. Exemples :
fr français
es espagnol
de allemand
it italien
Vous pouvez changer les textes si vous le souhaitez. Vous pouvez également ajouter des définitions
de chaînes de langues pour les utiliser dans un site multilingue.
Vous pouvez également spécifier plus avant le lieu l'espace d'emploi dans l'espace d'administration.
Si vous souhaitez ne personnaliser que la rubrique 17, vous crééez un fichier agora-17_fr.php3 sur le
modèle d'un fichier de langue existant.
Page 10/13
Administrer une instance Agora
Les scripts de création et de paramétrage des fichiers cache sont dans /ecrire/include/cacheHTML.
Page 11/13
Administrer une instance Agora