Retrouvez cet article dans : Linux Pratique Hors série 5
PhpBB est un BulletinBoard écrit en PHP, dont la principale motivation est de fournir un système de forums stable et Open Source. Il se veut très simple d'usage aussi bien que d'administration. Sachant qu'il s'agit d'un moteur de forum très répandu, abritant de très nombreuses et très diverses communautés, dans toutes les langues, voyons ce qu'il en est vraiment.
PhpBB2 est sorti début avril en version 2.0.20, et a été entièrement ré-écrit pour améliorer tant sa sécurité que ses fonctionnalités. Il tourne sur n'importe quel serveur Web (aussi bien sous Linux que sous Windows) et nécessite à la fois PHP (14.0.3 ou plus) et une base de données (par exemple MySQL 3.22 ou plus).
Installation
Vous commencerez par télécharger l'archive de phpBB2 sur le site du projet : http://www.phpbb.com/downloads.php. Après l'avoir décompressée, vous chargerez son contenu sur votre espace Web,

Fig. 1 : L'écran d'installation de phpBB 2

Fig. 2
 par exemple dans un répertoire /phpBB à la racine de votre espace : http://votresite.org/phpBB, grâce à FTP ou SSH, par exemple. Avec votre navigateur Web préféré, rendez-vous alors dans le répertoire
/install et affichez le fichier install.php. Par exemple : http://votresite.org/phpBB/install/install.php.
L'écran d'installation est divisé en trois parties.
- Dans Basic Configuration,
choisissez le type de Base de Données mis à disposition par votre hébergeur (par exemple, Tuxfamily propose MySQL 4.1.11 ; vous choisirez donc MySQL 4.x/5.x). S'il s'agit d'une première installation, vous choisirez Install comme méthode d'installation.
- Dans Database Configuration,
vous confierez à l'assistant d'installation les clés de votre base de données. Dans le premier champ (Database Server Hostname), vous préciserez le nom du serveur hébergeant votre base. Dans le second champ (Your Database Name), vous préciserez le nom de cette base. Les troisième et quatrième champs vous permettent de saisir respectivement l'identifiant (Database Username) et le mot de passe (Database Password) vous permettant de réaliser des opérations sur votre base. Enfin, le dernier champ (Prefix for tables in database) permet de déterminer le préfixe de toutes les tables qui seront créées par l'assistant lors de l'installation de phpBB : choisir un préfixe évocateur permet souvent de supprimer, mettre à jour et sauvegarder des portions de la base de données en limitant les risques d'erreurs désastreuses.
- Enfin, la dernière partie se nomme Admin Configuration.
Dans le premier champ (Admin Email Address) vous pouvez saisir l'adresse électronique de l'administrateur du forum ; cela lui permet d'être contacté en cas de soucis avec le fonctionnement du forum. Le nom de domaine (Domain Name) est automatiquement déterminé par l'assistant en fonction de l'espace d'installation, de même que le port (Server Port) et le répertoire courant (Script path). Les trois derniers champs permettent de donner un identifiant à l'administrateur sur les forums (Administrator Username) ainsi que de définir son mot de passe (Administrator Password, et sa confirmation).
Une fois toutes ces précieuses informations saisies, il ne vous reste plus qu'à presser le bouton Start Install. Si toutes les informations fournies sont correctes, vous devriez arriver à une page de confirmation de la bonne installation, qui invitera à accéder au panneau d'administration de vos forums en cliquant sur le bouton Finish Installation (Figure 2).
Pour limiter les exploits et les intrusions malicieuses dans la zone d'administration de vos forums, vous êtes invité à effacer, par FTP ou SSH, les répertoires /install et /contrib contenus dans http://votresite.org/phpBB. Une fois ceci fait, rechargez la page et identifiez-vous en tant qu'administrateur grâce à l'identifiant et au mot de passe saisis dans la partie Admin Configuration (Figure 3).
Vous noterez la possibilité de phpBB2 de retenir vos identifiant et mot de passe au-travers d'un cookie, ce qui permet d'être automatiquement identifié à chaque visite. Une fois identifié dans le forum, cherchez le lien Go to Administration Panel et cliquez dessus. Il vous conduira vers l'interface d'administration de phpBB2, après ré-identification obligatoire.
Administration de phpBB2
L'interface d'administration est divisée en deux parties, au moyen de frames. Celle de gauche, tout en hauteur, est le menu général d'administration, tandis que celle de droite, occupant presque toute la largeur de la page, est celle où seront visualisées les informations et ordonnées les opérations. Les trois premières options d'administration sont :
- Admin Index :
Il s'agit de la page d'accueil de phpBB2. Elle regroupe des informations généralistes, comme les statistiques de vos forums (par exemple le nombre de messages, de sujets, d'utilisateurs, la taille occupée par la base de données, etc.), des informations sur la nécessité éventuelle de faire des mises à jour de phpBB2, ou encore un récapitulatif des visiteurs actuellement en train de visiter les forums.
- Forum Index :
Il s'agit d'un accès rapide à vos forums.
- Preview Forum :
Les forums apparaissent dans la fenêtre principale, tout en vous laissant accès à la frame d'administration.
Administrer les forums (« Forum Admin »)
Cette section est dédiée à l'administration générale des forums.
phpBB2 en français?
Cela est bien évidemment possible, en téléchargeant la version 2.0.20 à partir du site http://www.phpbb-fr.com/, qui présente le paquetage officiel de phpBB, totalement francisé. Pourquoi avoir écrit l'article sur la base de la version anglaise ? Tout simplement parce que souvent phpBB est le choix par défaut pour de grands projets communautaires internationaux, et que cela peut aider certains artisans du Libre, peu à l'aise avec l'anglais, à s'y retrouver. Il ne vous sera pas très difficile de vous adapter à la version française si vous choisissez d'installer celle-ci.

 Fig. 3 : Le panneau d'identification de phpBB 2

 Fig. 4 : Le forum de démonstration créé par défaut, en attente de personnalisation
- Management :
Ce panneau permet d'ajouter, supprimer, éditer vos forums. Il permet également de modifier l'ordre d'affichage des forums ou des catégories. Deux champs permettent à tout moment de créer un nouveau forum (Create New Forum) ou une nouvelle catégorie de forums (Create new category). La création de catégories cohérentes avec des forums appropriés doit faire l'objet d'une mûre réflexion, car une mauvaise conception des forums peut condamner certaines sections à un quasi anonymat qui pourrait être préjudiciable à la fréquentation des forums.
- Permissions :
Ce panneau permet de changer les permissions (d'accès ou d'action) sur un forum particulier, ce qui peut avoir un effet direct sur les utilisateurs autorisés à visiter et/ou poster sur le forum. Il faut dans un premier temps sélectionner le forum qui sera affecté par les changements de permission. Il est alors possible de réaliser l'administration selon deux scénarii : le mode simple et le mode avancé. Le premier définit si le forum est public, s'il nécessite l'enregistrement, s'il est privé ou strictement réservé aux modérateurs. Pour les trois dernières catégories il est possible de déterminer si ces forums sont masqués ou visibles. En mode avancé, il est possible de définir, pour chacune des dix actions possibles (voir, lire, poster, répondre, éditer, effacer, transformer en post-it, transformer en annonce, voter ou créer un sondage) le niveau de permission nécessaire pour réaliser celles-ci (possibles pour tous, pour les membres, pour les modérateurs, pour les administrateurs ou privé).
Après avoir choisi un scénario (mode simple) ou défini les permissions de chaque action pour un forum, les boutons Submit et Reset permettent respectivement d'appliquer ces règles ou de les rétablir à la valeur d'origine.
En règle générale, il est important, pour éviter que des robots ne polluent vos forums, de n'autoriser que les membres à poster. De même, les annonces et les post-it sont souvent l'apanage des modérateurs ou des administrateurs.
- Pruning :
Ce panneau permet de sélectionner un forum en particulier et de délester les sujets qui sont restés sans réponse pendant une période (en jours) qu'il est possible de définir ici. Les annonces et les sondages toujours en cours ne seront pas effacés.
L'administration générale (« General Admin »)
Cette section propose diverses fonctionnalités qui aideront les administrateurs dans leur tâche de personnalisation des forums.
- Backup Database et Restore Database :
La première option permet de réaliser une sauvegarde de toutes les données relatives à phpBB, et la seconde de les restaurer ultérieurement. Les autres tables contenues dans la même base de données peuvent être sauvegardées et restaurées de la même façon, à condition que leur nom soit spécifié dans un champ spécifique de Backup Database, séparés par des virgules.
- Configuration :
Ce panneau est peut-être le plus important, toutes sections confondues, car il est au cœur du comportement de phpBB2, et est lui-même divisé en plusieurs sous-sections, qu'il ne nous sera pas possible d'aborder en détail.
- Dans la section General Board Settings,
toutefois, il vous sera possible de définir les paramètres propres aux forums (noms de domaine ou des forums, descriptifs, chemins et ports) ou encore la politique à appliquer concernant l'activation des comptes, l'emploi d'un code de confirmation visuel (pour bloquer les invasions de robots), l'identification automatique, l'inondation des forums par des messages venant d'une même personne en un temps très court, le nombre de sujets par page, mais aussi le nombre de messages par page de sujet, et enfin diverses options comme le thème ou la langue par défaut, ou encore la zone horaire.
- Â La section Cookie Settings
permet de définir la façon dont le serveur envoie des cookies au navigateur du visiteur. Les valeurs par défaut sont la plupart du temps correctes, mais il vous est possible de les changer. Un mauvais paramétrage, en revanche, peut empêcher vos visiteurs de s'identifier, par exemple.
- La section Private Messaging
autorise les membres à s'envoyer des messages de l'un à l'autre, uniquement au-travers des services du forum. Cela leur permet de se contacter sans pour autant révéler d'adresse de courriel. Cette section permet notamment de définir la taille des boîtes de réception, de messages envoyés et de messages sauvegardés.
- La section User and Forum basic settings
permet de définir les comportements généraux des forums ou des utilisateurs. Ils permettent (ou non), notamment, de définir le nombre maximum d'options aux sondages, d'autoriser l'usage de balises HTML, l'activation du BBCode (le « langage » de composition des messages) ou des émoticônes, ou encore d'activer des signatures et d'en définir la longueur maximale.
- La section Avatar Settings
autorise et définit l'usage d'avatars pour les utilisateurs. Les avatars sont des images ou des photographies qui permettent de reconnaître visuellement l'utilisateur sur les forums. Les avatars peuvent être chargés sur un espace spécifique des forums, ou être stockés de façon distante. Les dimensions en pixels, ou le poids en Ko des avatars peuvent être imposés ici.
- La section COPPA settings
est relative à la protection des enfants sur la toile (Children's Online Privacy Protection Act, http://www.coppa.org/). Lors de l'enregistrement, le service requiert que l'utilisateur accepte les conditions d'usage des forums et lui demande s'il a plus ou moins de treize ans. S'il a moins de treize ans, l'activation du compte est reportée, jusqu'à ce que l'administrateur reçoive par fax ou courriel une autorisation parentale (ou d'un tuteur) pour l'accès et l'usage des forums ; l'utilisateur en est informé par un courriel qui lui indique les démarches à suivre.
Dans cette section, il est possible de spécifier le numéro de fax ou l'adresse de courriel devant recevoir ladite autorisation. Cette procédure est obligatoire aux Etats-Unis et dans certains pays.
- Mass Email :
Ce formulaire permet d'envoyer un courriel groupé à tous les utilisateurs des forums, ou à certains groupes particuliers s'ils ont été définis. Les destinataires sont en copie cachée les uns des autres, de sorte que les adresses « administratives » de courriel qui ont servi aux inscriptions restent anonymes.
- Smilies :
Dans ce panneau, il est possible d'ajouter, supprimer ou éditer les émoticônes disponibles à la fois pour les messages privés et les messages dans les forums.
- Word Censors :
Ce panneau permet d'ajouter des mots dans une liste de mots prohibés par vos forums. Ces mots seront automatiquement censurés par le système, et aucun utilisateur ne pourra avoir ces mots dans son identifiant.
Gérer les groupes d'utilisateurs (« Group Admin »)
Cette section permet de créer des groupes et de leur conférer des droits particuliers, comme des pouvoirs de modération, par exemple.
- Management :
Ce panneau permet d'ajouter, supprimer ou d'éditer des groupes. Il est possible de spécifier les nom et description d'un groupe, mais aussi son modérateur, et de déterminer si le groupe est ouvert, fermé ou encore caché.
- Permissions :
Ce panneau permet de gérer les privilèges d'un groupe en particulier. Le mode simple permet de définir si le groupe peut ou non modérer les messages. Le mode avancé permet de définir si le groupe est en mesure de réaliser l'une ou l'autre des actions possibles (voir, lire, poster, répondre, éditer, effacer, transformer en post-it, transformer en annonce, voter ou créer un sondage).
L'administration des thèmes (« Styles admin »)
Cette section permet de définir l'apparence des forums, au-travers de quatre panneaux distincts.
- Add :
Ce panneau permet d'ajouter un nouveau thème, généralement téléchargé sur la toile.
- Create :
Ce panneau permet de définir pour un nouveau thème tous les paramètres composant son apparence. Les couleurs sont spécifiées en mode hexadécimal.
- Export :
Ce panneau permet d'exporter vos thèmes perso, pour les mettre plus facilement à disposition de la communauté.
- Management :
Ce dernier panneau, enfin, vous permet de définir les thèmes alternatifs qui peuvent être sélectionnés par les utilisateurs des forums. Ils devront bien sûr avoir été ajoutés ou créés auparavant.
Gérer les utilisateurs (« User admin »)
Cette section permet de gérer les utilisateurs, de leur bannissement jusqu'à la saisie de leurs données personnelles ou la définition de leurs privilèges dans vos forums.
- Ban Control :
Si des utilisateurs se révèlent particulièrement indélicats et deviennent indésirables, vous pouvez prendre la décision de les bannir définitivement de vos forums. Vous pouvez bannir soit un identifiant, soit un utilisateur, soit une plage d'adresses IP, ou même un nom de domaine (ces deux dernières méthodes empêchant même l'indélicat de venir visiter les zones publiques des forums). Vous pouvez également spécifier le bannissement à partir d'une adresse de courriel, mais la multiplicité des comptes et des courriels individuels rend cette méthode de bannissement assez peu efficace.
- Disallow names :
Vous pouvez interdire l'usage de certains identifiants. S'ils sont déjà en usage, il vous faudra les effacer d'abord.
- Management :
Dans ce panneau, vous pouvez changer les informations relatives à un utilisateur, ainsi que certaines options uniquement accessibles par un administrateur, comme l'activité de l'utilisateur, l'autorisation d'utiliser les messages privés ou les avatars, de lui donner un titre particulier (voir Ranks, ci-après), ou encore d'effacer l'utilisateur.
- Permissions :
De même que vous pouvez définir les privilèges d'un groupe, vous pouvez faire de même avec un utilisateur particulier.
- Ranks :
Le système prévoit d'attribuer un titre à chaque utilisateur, en fonction du nombre de messages qu'il a postés sur vos forums.
Côté modérateurs...
Habituellement, les modérateurs désignés pour réguler l'activité du site disposent de quelques privilèges par rapport aux utilisateurs, sans pour autant avoir les mêmes permissions que les administrateurs. Les tâches des modérateurs consistent bien évidemment à vérifier le respect de la Netiquette, à renforcer certains usages tacites ou implicites (l'usage d'un bon français plutôt que du langage SMS, par exemple), ainsi qu'à réparer les erreurs des utilisateurs. Quelques-unes des actions les plus courantes menées par les modérateurs sont reprises ci-dessous.
Actions sur les messages
Tout utilisateur peut éditer ses propres messages grâce au bouton Edit placé dans l'en-tête d'un message qu'il a rédigé. Mais les modérateurs ont par défaut également ce privilège, généralement pour corriger des liens ou pour censurer des parties de messages ne répondant pas à la charte du forum.
A noter également les boutons X pour effacer complètement le message, ou IP pour afficher l'adresse IP de l'expéditeur.

 Fig. 5 : Le groupe d'actions possibles sur un message particulier pour un modérateur
 Changement de la nature des messages
Un modérateur a accès à des options spécifiques lorsqu'il édite un message. En effet, il peut soit cocher la case Delete this post pour effacer le message, soit définir le message comme étant de type Normal (c'est le message classique), Sticky (c'est le message de type Post-it, qui apparaît toujours en haut de la première page du salon de discussion) ou Announcement (qui apparaît toujours comme premier message du salon).
Les messages Sticky sont généralement réservés aux messages dont l'intérêt est particulier (par exemple, une question fréquemment posée, ou des instructions particulières quant à l'usage de ce salon de discussion).

 Fig. 6 : Les options relatives à la nature d'un message, accessibles par un modérateur (Post topic as...)
Actions sur les fils de discussion
En bas du fil de discussion se trouvent une série d'icônes qui permettent respectivement :
- de supprimer totalement le fil de discussion (cas de messages non sollicités),
- de le déplacer dans un salon de discussion plus approprié (cas des utilisateurs inexpérimentés postant aux mauvais endroits),
- de verrouiller celui-ci (que ce soit pour clore une discussion qui tourne mal, ou pour empêcher qu'un message informatif soit « pollué » par des réponses non sollicitées),
- ou enfin de diviser un message (soit en raison de sa longueur, soit parce que le sujet a bifurqué sur autre chose).

 Fig. 7 : Le groupe d'actions possibles sur un fil de discussion pour un modérateur
Côté utilisateurs...
Pour être utilisateur des forums phpBB, il faut commencer par s'enregistrer, afin de disposer d'un compte. Généralement, toute personne anonyme peut visiter les diverses sections des forums, à l'exception de celles qui ont été définies explicitement comme réservées aux membres, à certains groupes, ou aux équipes d'administration ou de modération.
S'enregistrer
Pour s'enregistrer, l'utilisateur doit d'abord cliquer sur le lien Register qui se situe généralement en tête des forums.

Fig. 8 : Le groupe d'options communes à tous les forums phpBB
 Cela l'amène immédiatement à une interface découpée en trois parties.
- Registration information :
Ici, l'individu choisira son nom d'utilisateur (Username) et spécifiera un mot de passe (Password) qu'il lui faudra confirmer. Après avoir spécifié une adresse de courriel valide (qui restera confidentielle), il devra saisir un code de confirmation. Cette mesure a pour objectif d'empêcher des robots de s'inscrire automatiquement sur vos forums pour les polluer par des messages non sollicités.

Fig. 9 : La zone permettant de créer son compte d'utilisateur
Les deux parties suivantes peuvent bien sûr être garnies au moment de l'inscription, mais l'utilisateur peut les corriger ultérieurement en cliquant sur le lien Profile.
- Profile information :
Cette partie recense différentes informations concernant l'utilisateur qui seront rendues publiques, comme ses références ICQ, MSN, Yahoo et autres, une adresse de site Internet, l'endroit où il vit, son activité et ses centres d'intérêt.
Toutes ces informations sont bien évidemment optionnelles, si l'utilisateur préfère conserver un strict anonymat. Il est également possible de spécifier une signature automatique à tous ses messages au-travers du champ approprié, limité à 255 caractères. Il est possible, dans celui-ci, de faire usage des balises du langage BBCode.
- Preferences :
Cette dernière partie regroupe diverses options que l'utilisateur peut ou non activer. Elles permettent par exemple de rendre son adresse de courriel publique, de révéler lorsqu'il est en ligne sur les forums, d'être automatiquement notifié des réponses aux discussions qu'il a commencées ou auxquelles il participe, d'être informé par une fenêtre flottante lorsqu'il a reçu un message privé, de spécifier l'emploi du BBCode (par défaut) ou de l'HTML, l'usage des émoticônes ou de la signature automatique. Il peut également ici choisir le langage du forum, son thème préféré ainsi que sa zone temporelle.
Poster un message
Il faut d'abord se trouver dans la bonne section des forums. Les administrateurs découpent généralement leurs forums en plusieurs sections, abritant chacune un ou plusieurs salon(s) de discussion. Il convient toujours, avant de poster, de lire les messages épinglés (post-it) afin de connaître les modalités de publication d'un message. En effet, certains forums codifient les us et coutumes dans leurs salons de discussion, et les modérateurs peuvent intervenir lorsque les règles ne sont pas respectées.
Sur les forums d'entraide (apprentissage d'un logiciel, par exemple), il convient toujours de faire usage du lien Search pour s'assurer que la question n'a pas déjà été posée et la réponse trouvée : rien n'agace plus les usagers des forums que de toujours répondre aux mêmes questions, indéfiniment.
Dans un forum donné, il est possible de poster un message de deux façons. Soit en créant un nouveau fil de discussion grâce au bouton New Topic, à la racine d'un salon de discussion, soit en répondant à une discussion déjà lancée grâce au bouton Post Reply. Dans l'un comme l'autre cas, l'utilisateur arrive sur une interface de rédaction.

Fig. 10
Astuce: citer le message auquel on répond
Plutôt que de simplement utiliser le bouton Post Reply, en bas du fil complet de discussion, vous pouvez faire usage du bouton Quote, au niveau de l'en-tête du message auquel vous répondez. L'interface de rédaction est alors automatiquement pré-garnie avec le texte précédent cité.

L’interface de rédaction est divisée en deux parties : la première permet de rédiger le message en lui-même et la seconde, dans le cas où il s'agit d'un nouveau message, d'ajouter un sondage.
- Post a new topic :
Il convient de clairement identifier le sujet de son message grâce au champ Subject. Il est obligatoire pour un nouveau message, mais optionnel pour une réponse. Vous pouvez saisir votre texte au kilomètre, puis le mettre en forme grâce aux boutons appropriés.
Par exemple, sélectionnez un mot en particulier et cliquez sur le bouton de mise en forme B (Bold, pour transformer en caractères gras) : le système se charge d'encadrer le mot par les balises BBCode appropriées:
[b]mot[/b]. Vous pouvez insérer un émoticône à l'emplacement du curseur en cliquant simplement sur l'un de ceux disponibles sur le côté gauche de l'interface.
- Add a Poll :
Après avoir défini la question de votre sondage dans le champ Poll question, vous pouvez insérer les réponses possibles une à une dans le champ Poll option et en les ajoutant à la liste des possibilités grâce au bouton Add option. Vous pouvez également spécifier une date limite de réponse en jours grâce au champ Run poll for... days (0 jour équivalant à une validité illimitée)

Fig. 11 : L'interface de rédaction d'un message
Conclusion
PhpBB2 est un système de forums avancé et mature. Il offre de nombreuses fonctionnalités qu'il n'a pas été possible de couvrir ici, et se révèle surtout très productif à l'usage. Tant les utilisateurs que les modérateurs ou les administrateurs devront chiner parmi les possibilités qui leur sont offertes, ou trouver une tierce documentation (celle-ci est abondante sur la toile) pour parfaire leur apprentissage.
Malheureusement, du fait de sa popularité, phpBB est régulièrement la cible d'assauts de petits plaisantins qui s'attaquent gratuitement aux inévitables failles de sécurité. Lorsqu'une telle faille est découverte, il convient de très rapidement faire une mise à jour du système pour éviter que ces « exploits » ne détruisent les forums, et bien sûr réaliser à intervalles réguliers des sauvegardes de la base de données, pour une éventuelle restauration.
Ces menus précautions prises, vous avez désormais tout le loisir de soutenir un projet communautaire ou personnel par des forums qui permettront de doper son activité.
- Dernière version : phpBB 2.0.20 (avril 2006)
Liens
-  Site officiel [en] du projet phpBB : www.phpbb.com/
-  Site de l'équipe française de phpBB : www.phpbb-fr.com/
Retrouvez cet article dans : Linux Pratique Hors série 5

