Installer une extension phpBB correctement : activation, mise à jour, erreurs et dépannage
Installer une extension dans phpBB paraît simple :
Code : Tout sélectionner
Télécharger
Décompresser
Envoyer les fichiers
Activer
Et pourtant, c’est l’une des opérations qui génère le plus de questions.
L’extension n’apparaît pas dans le panneau d’administration.
phpBB indique qu’elle ne peut pas être activée.
Une page blanche ou une erreur 500 apparaît.
La nouvelle version a été copiée mais phpBB continue d’afficher l’ancienne.
L’administrateur a supprimé le dossier de l’extension et le forum ne fonctionne plus correctement.
Dans la majorité des cas, le problème ne vient pas de phpBB lui-même.
Il vient d’une mauvaise arborescence, d’une incompatibilité, d’une procédure de mise à jour incorrecte ou d’une confusion entre désactiver une extension et supprimer ses données.
Ce guide reprend donc le fonctionnement depuis le début.
Nous allons voir :
[]ce qu’est réellement une extension phpBB ;
[]où ses fichiers doivent être placés ;
[]comment reconnaître une bonne arborescence ;
[]comment activer une extension ;
[]pourquoi une extension peut ne pas apparaître ;
[]comment la mettre à jour proprement ;
[]comment la désactiver sans perdre ses données ;
[]comment la désinstaller réellement ;
[]quoi faire lorsqu’une extension provoque une erreur ;
[]et quelles précautions prendre avant toute manipulation.
1. Une extension phpBB n’est pas un fichier à copier n’importe où
Une extension est un ensemble de fichiers organisé selon une structure précise.
Elle peut ajouter, par exemple :
[]une nouvelle fonctionnalité ;
[]une page ;
[]un module dans le panneau d’administration ;
[]des réglages supplémentaires ;
[]des événements ;
[]des notifications ;
[]des tâches ;
[]des tables ou colonnes en base de données ;des éléments dans les pages du forum.
Une extension correctement conçue utilise le système d’extensions de phpBB.
Elle ne devrait pas nécessiter de remplacer au hasard des fichiers du cœur du forum.
2. Le dossier ext est l’emplacement des extensions
Dans une installation phpBB, vous trouvez notamment :
Code : Tout sélectionner
adm/
assets/
cache/
ext/
files/
images/
includes/
language/
phpbb/
styles/
vendor/
Le dossier qui nous intéresse ici est :
Code : Tout sélectionner
ext/
C’est à cet endroit que les extensions sont installées.
Mais attention :
on ne place généralement pas directement tous les fichiers de l’extension à la racine de ext.
phpBB utilise une organisation par auteur ou fournisseur, puis par extension.
3. Comprendre l’arborescence vendor/extension
Une extension possède généralement un identifiant composé de deux éléments.
Par exemple :
Code : Tout sélectionner
auteur/extension
On peut également parler de :
Code : Tout sélectionner
vendor/extension
Si une extension possède l’identifiant :
Code : Tout sélectionner
exemple/monextension
sa structure doit normalement ressembler à :
Code : Tout sélectionner
ext/
exemple/
monextension/
composer.json
ext.php
…
Le fichier important à repérer est notamment :
Code : Tout sélectionner
composer.json
Il doit se trouver directement dans le dossier de l’extension.
Donc :
Code : Tout sélectionner
ext/exemple/monextension/composer.json
et non :
Code : Tout sélectionner
ext/monextension/composer.json
si l’extension attend le vendor exemple.
4. L’erreur classique : un dossier supplémentaire
C’est probablement l’une des erreurs d’installation les plus fréquentes.
Vous téléchargez :
Code : Tout sélectionner
monextension-1.2.0.zip
Vous décompressez le fichier et obtenez :
Code : Tout sélectionner
monextension-1.2.0/
exemple/
monextension/
composer.json
Puis vous envoyez tout le premier dossier dans ext.
Vous obtenez alors :
Code : Tout sélectionner
ext/
monextension-1.2.0/
exemple/
monextension/
composer.json
Cette structure est incorrecte.
phpBB attend plutôt :
Code : Tout sélectionner
ext/
exemple/
monextension/
composer.json
Le dossier contenant le numéro de version ne doit généralement pas être ajouté entre
Code : Tout sélectionner
ext/et le vendor.
5. Comment savoir où placer exactement les fichiers ?
Après avoir décompressé l’archive, cherchez :
Code : Tout sélectionner
composer.json
Regardez ensuite dans quel dossier il se trouve.
Si l’archive contient déjà :
Code : Tout sélectionner
exemple/
monextension/
composer.json
copiez le dossier :
Code : Tout sélectionner
exemple/
dans :
Code : Tout sélectionner
ext/
afin d’obtenir :
Code : Tout sélectionner
ext/exemple/monextension/composer.json
C’est ce chemin final qui est important.
6. Ne vous fiez pas uniquement au nom du fichier ZIP
Le ZIP peut s’appeler :
Code : Tout sélectionner
MON_EXTENSION_1.2.0.zip
mais cela ne signifie pas que phpBB attend :
Code : Tout sélectionner
ext/MON_EXTENSION_1.2.0/
Le nom du fichier téléchargé et le chemin technique de l’extension sont deux choses différentes.
Toujours vérifier la structure interne.
7. Une fois les fichiers copiés, où activer l’extension ?
Connectez-vous au Panneau d’administration.
Ouvrez la partie consacrée à la personnalisation et à la gestion des extensions.
phpBB affiche les extensions détectées.
Une extension correctement installée mais encore inactive doit pouvoir apparaître dans la liste des extensions disponibles.
Vous pourrez alors demander son activation.
8. Que se passe-t-il lors de l’activation ?
L’activation ne consiste pas simplement à afficher un bouton supplémentaire.
Selon l’extension, phpBB peut notamment :
[]enregistrer des données ;
[]exécuter des migrations ;
[]créer des tables ;
[]ajouter des colonnes ;
[]ajouter des modules dans le panneau d’administration ;
[]enregistrer des permissions ;installer des réglages par défaut.
C’est pour cette raison qu’il ne faut pas traiter l’activation comme une simple copie de fichiers.
9. L’extension n’apparaît pas dans le panneau d’administration
Premier réflexe :
vérifier l’arborescence.
Cherchez réellement le fichier :
Code : Tout sélectionner
composer.json
Le chemin doit correspondre à la structure attendue par l’extension.
Les causes fréquentes sont :
[]un dossier de version supplémentaire ;
[]un dossier manquant ;
[]le vendor supprimé ;
[]l’archive copiée sans être décompressée ;
[]une extraction incomplète ;
[]un package qui n’est pas réellement une extension phpBB ;des fichiers envoyés au mauvais emplacement.
Avant de chercher une erreur compliquée, vérifiez donc simplement :
Code : Tout sélectionner
Le composer.json est-il exactement là où il doit être ?
10. Exemple d’une mauvaise installation
Vous avez :
Code : Tout sélectionner
ext/
extension-1.0.0/
vendorname/
extensionname/
composer.json
phpBB peut ne pas détecter correctement cette extension.
La structure attendue est :
Code : Tout sélectionner
ext/
vendorname/
extensionname/
composer.json
Un seul niveau de dossier en trop suffit donc à rendre l’installation incorrecte.
11. L’extension apparaît mais refuse de s’activer
Dans ce cas, l’arborescence est probablement suffisamment correcte pour que phpBB la détecte.
Il faut alors regarder autre chose.
Parmi les causes possibles :
[]version de phpBB incompatible ;
[]version de PHP incompatible ;
[]extension dépendante d’une autre extension absente ;
[]fichiers incomplets ;
[]migration incompatible ;
[]ancienne installation mal supprimée ;erreur dans l’extension elle-même.
Ne forcez pas immédiatement l’activation.
Lisez le message affiché par phpBB.
Une extension bien conçue peut volontairement refuser son activation si votre environnement n’est pas compatible.
12. Vérifier la compatibilité avant l’installation
Avant d’envoyer les fichiers sur votre serveur, vérifiez au minimum :
Code : Tout sélectionner
Version de phpBB compatible
Version de PHP compatible
Version de l’extension
Dépendances éventuelles
Instructions particulières
Une extension prévue pour une ancienne branche de phpBB n’est pas automatiquement compatible avec votre installation actuelle.
Même chose pour PHP.
13. Compatible avec phpBB ne signifie pas forcément compatible avec toutes les versions
Évitez de vous contenter d’une indication vague comme :
Code : Tout sélectionner
Compatible phpBB
Cherchez plutôt quelque chose du type :
Code : Tout sélectionner
phpBB 3.3.x
ou une plage de versions clairement annoncée par l’auteur.
Une extension peut fonctionner parfaitement avec une version de phpBB et échouer avec une autre.
14. Sauvegarder avant une extension importante
Pour une petite extension simple, le risque peut être faible.
Mais certaines extensions modifient la base de données ou ajoutent des informations importantes.
Avant une installation sensible, et surtout sur un forum en production, prévoyez une sauvegarde adaptée.
Idéalement :
[]sauvegarde de la base de données ;
[]sauvegarde des fichiers nécessaires ;
[]connaissance de la version actuellement installée ;
[]possibilité de revenir en arrière.
Une sauvegarde n’est utile que si vous savez comment la restaurer.
15. Installer d’abord sur un environnement de test
Si votre forum est important, une bonne pratique consiste à posséder une copie ou un environnement de test.
Vous pouvez y vérifier :
[]l’activation ;
[]les migrations ;
[]l’affichage ;
[]les permissions ;
[]les interactions avec les autres extensions ;
[]la mise à jour ;la désactivation.
Une extension qui fonctionne sur votre environnement de test présente beaucoup moins de surprises lors du déploiement réel.
16. Désactiver une extension ne signifie pas supprimer ses données
C’est une différence fondamentale.
Lorsque vous désactivez une extension, vous demandez essentiellement à phpBB de ne plus l’utiliser activement.
Mais ses données peuvent être conservées.
Cela permet notamment de la réactiver plus tard.
On peut résumer ainsi :
Code : Tout sélectionner
Désactivation
fonctionnalité arrêtée
+
données généralement conservées
17. Supprimer les données est une autre opération
phpBB permet également, pour une extension désactivée, d’effectuer une suppression de ses données.
Cette opération peut déclencher la suppression :
[]des tables créées par l’extension ;
[]des colonnes ;
[]des réglages ;
[]des modules ;
[]des permissions ;
[]et d’autres données installées par ses migrations.
On peut donc résumer :
Code : Tout sélectionner
Désactiver
≠
Supprimer les données
Cette différence est capitale.
18. Ne supprimez pas les données si vous préparez simplement une mise à jour
Supposons que vous possédez :
Code : Tout sélectionner
Extension 1.0.0
et souhaitez installer :
Code : Tout sélectionner
Extension 1.1.0
Dans une mise à jour normale, vous devez préserver les données existantes.
Si vous utilisez une fonction de suppression des données avant la mise à jour, vous risquez de transformer une mise à jour en désinstallation.
Vous pourriez perdre :
[]la configuration ;
[]les données créées par les utilisateurs ;
[]les paramètres ;
[]l’historique propre à l’extension.
Suivez toujours les instructions de mise à jour fournies par l’auteur.
19. Procédure générale de mise à jour d’une extension
Les instructions de l’auteur restent prioritaires, mais une mise à jour classique suit souvent une logique de ce type :
Code : Tout sélectionner
1. Vérifier les instructions de la nouvelle version.
2. Sauvegarder ce qui doit l’être.
3. Désactiver l’extension.
4. Remplacer les anciens fichiers par les nouveaux.
5. Purger le cache si nécessaire.
6. Réactiver l’extension.
7. Laisser phpBB exécuter les migrations prévues.
8. Vérifier le fonctionnement.
Ce qu’il ne faut pas faire automatiquement :
Code : Tout sélectionner
Supprimer les données.
Une mise à jour doit normalement conserver les données.
20. Faut-il supprimer l’ancien dossier avant de copier la nouvelle version ?
Cela dépend des instructions de l’extension.
Il faut cependant éviter de conserver des fichiers obsolètes qui ne font plus partie de la nouvelle version.
Copier simplement de nouveaux fichiers par-dessus les anciens peut parfois laisser des fichiers supprimés par l’auteur dans une version récente.
Une méthode propre consiste à suivre précisément la procédure officielle de l’extension.
Et surtout :
ne supprimez jamais les fichiers d’une extension active sans comprendre les conséquences.
21. Pourquoi ne faut-il pas supprimer directement le dossier d’une extension active ?
Parce que phpBB peut toujours considérer l’extension comme activée.
Il s’attend alors à trouver :
[]ses classes PHP ;
[]ses services ;
[]ses événements ;
[]ses fichiers ;
[]ses migrations ;
[]ses modules.
Si vous supprimez brutalement les fichiers, phpBB peut tenter de charger quelque chose qui n’existe plus.
Le résultat peut être :
Code : Tout sélectionner
Erreur
Page blanche
Erreur 500
Forum inaccessible
PCA inaccessible
La règle à retenir est simple :
désactivez d’abord l’extension avec les mécanismes phpBB avant de supprimer ses fichiers.
22. Comment désinstaller complètement une extension ?
Une désinstallation complète suit généralement cette logique :
Code : Tout sélectionner
1. Désactiver l’extension.
2. Vérifier que le forum fonctionne normalement.
3. Supprimer les données de l’extension si vous souhaitez réellement les perdre.
4. Supprimer ensuite les fichiers de l’extension.
Attention :
l’étape de suppression des données peut être irréversible.
Ne l’utilisez pas si votre objectif est simplement de désactiver temporairement l’extension.
23. Je veux seulement tester sans perdre mes réglages
Dans ce cas :
Code : Tout sélectionner
Désactivez l’extension.
Ne supprimez pas ses données.
Vous pourrez ensuite la réactiver.
C’est justement l’intérêt de séparer désactivation et désinstallation.
24. Une extension provoque une erreur 500
Ne commencez pas immédiatement à supprimer des dossiers au hasard.
Posez-vous d’abord plusieurs questions :
Code : Tout sélectionner
L’erreur est-elle apparue juste après l’activation ?
L’erreur est-elle apparue après une mise à jour ?
La version de PHP vient-elle de changer ?
phpBB vient-il d’être mis à jour ?
Une autre extension vient-elle d’être installée ?
Ensuite, consultez les journaux d’erreurs du serveur.
Une erreur 500 est un symptôme.
Le journal contient souvent la vraie cause.
25. Une extension fonctionne sur certaines pages mais pas sur d’autres
Cela peut arriver lorsqu’elle intervient uniquement sur certains événements ou certaines routes.
Exemple :
Code : Tout sélectionner
Index : fonctionne
Sujet : erreur
PCA : fonctionne
Profil : fonctionne
Cette information est très utile.
Elle montre que le problème n’est probablement pas un crash total de phpBB.
Notez précisément :
Code : Tout sélectionner
la page concernée ;
l’action effectuée ;
le message d’erreur ;
le moment où le problème a commencé.
Un diagnostic précis vaut beaucoup mieux que :
Code : Tout sélectionner
L’extension ne marche pas.
26. Une extension fonctionne jusqu’au changement de version PHP
C’est un scénario classique.
Votre forum fonctionnait avec une version de PHP.
Votre hébergeur ou vous-même passez à une version plus récente.
Une ancienne extension provoque soudain une erreur.
Cela peut signifier que l’extension utilise du code devenu incompatible.
Avant un changement important de PHP :
[]vérifiez la compatibilité de phpBB ;
[]vérifiez la compatibilité des extensions ;testez si possible avant la production.
27. Une mise à jour de phpBB peut révéler une vieille extension incompatible
Même principe.
Vous mettez phpBB à jour.
Le cœur fonctionne.
Mais une extension ancienne utilise un événement, un service ou un comportement qui a changé.
Le problème apparaît alors après la mise à jour.
C’est pourquoi il est important de faire l’inventaire de vos extensions avant une évolution importante.
28. Comment faire l’inventaire de ses extensions ?
Avant une mise à jour majeure, notez par exemple :
Code : Tout sélectionner
Nom de l’extension
Version installée
Version disponible
Auteur
Compatibilité annoncée
Extension activée ou non
Importance pour le forum
Vous saurez immédiatement quelles extensions nécessitent une attention particulière.
29. Ne gardez pas des extensions inutilisées pendant des années
Un forum peut accumuler :
Code : Tout sélectionner
30 extensions installées
12 réellement utilisées
18 oubliées
Chaque extension supplémentaire représente potentiellement :
[]du code à maintenir ;
[]une dépendance ;
[]une incompatibilité future ;
[]un risque de sécurité si elle est abandonnée ;une difficulté supplémentaire lors des mises à jour.
Si une extension n’est plus utile, envisagez une désinstallation propre.
30. Attention aux extensions abandonnées
Une extension ancienne peut parfaitement fonctionner aujourd’hui.
Cela ne signifie pas qu’elle continuera à fonctionner après :
Code : Tout sélectionner
une nouvelle version de PHP ;
une mise à jour phpBB ;
un changement d’environnement.
Vérifiez autant que possible :
[]la dernière version publiée ;
[]la date de maintenance ;
[]la compatibilité annoncée ;
[]les retours des utilisateurs ;le support disponible.
31. Ne téléchargez pas une extension depuis n’importe quelle source
Une extension est du code PHP exécuté sur votre serveur.
Elle peut donc avoir accès à une partie importante de l’environnement de votre forum.
Privilégiez :
[]les sources connues ;
[]les auteurs identifiés ;
[]les catalogues sérieux ;
[]les dépôts officiels ;les versions documentées.
Évitez les archives récupérées sur des sites inconnus sans savoir qui les a créées ou modifiées.
32. Vérifier le contenu d’une archive avant de l’envoyer
Avant installation, ouvrez l’archive.
Vous devez pouvoir identifier clairement la structure.
Exemple :
Code : Tout sélectionner
vendor/
extension/
composer.json
ext.php
language/
migrations/
config/
styles/
…
Toutes les extensions n’ont pas exactement les mêmes dossiers, mais l’organisation générale doit être cohérente.
Une archive totalement incompréhensible mérite d’être examinée avant installation.
33. À quoi sert composer.json ?
Le fichier :
Code : Tout sélectionner
composer.json
contient notamment des informations permettant d’identifier l’extension.
On peut y trouver selon le package :
[]son nom technique ;
[]sa version ;
[]son type ;
[]sa licence ;
[]son auteur ;
[]certaines dépendances ;des informations de compatibilité.
Il fait partie des fichiers importants pour la détection et la description d’une extension.
34. À quoi sert ext.php ?
De nombreuses extensions possèdent également :
Code : Tout sélectionner
ext.php
Ce fichier peut notamment permettre à l’extension de contrôler si elle peut être activée dans l’environnement actuel.
Une extension sérieuse peut par exemple vérifier certaines conditions avant activation.
Elle peut ainsi refuser proprement de s’activer plutôt que provoquer une erreur plus tard.
35. À quoi servent les migrations ?
Les migrations permettent à une extension de faire évoluer proprement ses données et sa configuration.
Elles peuvent notamment :
[]créer une table ;
[]ajouter une colonne ;
[]ajouter une permission ;
[]enregistrer une configuration ;
[]ajouter un module ;
[]faire évoluer une ancienne installation.
C’est pour cette raison qu’il ne faut pas remplacer une procédure de mise à jour par des modifications SQL improvisées.
L’extension doit normalement gérer son évolution grâce à ses migrations.
36. Pourquoi une extension peut avoir besoin d’être désactivée avant mise à jour ?
Pendant le remplacement des fichiers, vous pourriez avoir temporairement :
Code : Tout sélectionner
une partie des fichiers de l’ancienne version
+
une partie des fichiers de la nouvelle version
Si l’extension reste active pendant cette période, phpBB peut charger un ensemble incohérent.
La désactivation réduit ce risque lorsque la procédure de mise à jour la prévoit.
37. Le cache peut-il provoquer des comportements étranges ?
Oui.
phpBB utilise un système de cache.
Après certaines modifications, il peut être nécessaire de purger ce cache afin que les changements soient correctement pris en compte.
Mais attention :
purger le cache ne répare pas une extension incompatible.
Si le problème vient d’une erreur PHP ou d’une mauvaise migration, vider le cache ne transformera pas le code défectueux en code compatible.
Le cache est une étape de maintenance, pas une solution universelle.
38. L’extension est activée mais je ne vois rien
Ce n’est pas forcément un bug.
Certaines extensions :
[]n’ajoutent aucun élément visible sur l’index ;
[]fonctionnent uniquement dans le PCA ;
[]ajoutent une fonctionnalité dans une page précise ;
[]nécessitent une configuration ;
[]nécessitent des permissions ;
[]n’affichent quelque chose que lorsqu’une condition est remplie.
Après activation, consultez la documentation.
Cherchez notamment :
Code : Tout sélectionner
Configuration
Permissions
Modules PCA
Pages ajoutées
Conditions d’utilisation
39. Une extension peut être installée correctement mais inutilisable à cause des permissions
Vous activez une extension.
L’administrateur voit sa fonctionnalité.
Un membre ne la voit pas.
Avant de conclure à une erreur, vérifiez si l’extension ajoute des permissions.
Il peut être nécessaire de les attribuer aux groupes concernés.
Exemple :
Code : Tout sélectionner
Administrateurs : autorisés
Utilisateurs enregistrés : non configurés
Dans ce cas, l’extension peut parfaitement fonctionner.
C’est simplement la configuration des droits qui doit être adaptée.
40. Deux extensions peuvent-elles entrer en conflit ?
Oui, c’est possible.
Deux extensions peuvent intervenir sur :
[]la même page ;
[]le même événement ;
[]les mêmes données ;
[]la même fonctionnalité ;
[]des services liés ;
[]des templates communs.
Si un problème apparaît uniquement lorsque deux extensions sont activées simultanément, cette information est importante.
Testez méthodiquement plutôt que de modifier les deux extensions en même temps.
41. Méthode simple pour identifier l’extension responsable
Si un problème est apparu après plusieurs changements :
Code : Tout sélectionner
1. Notez le symptôme exact.
2. Consultez les logs.
3. Identifiez la dernière modification effectuée.
4. Désactivez proprement l’extension suspecte si possible.
5. Retestez.
6. Réactivez si nécessaire.
7. Modifiez une seule chose à la fois.
Le but est d’obtenir une relation claire entre :
Code : Tout sélectionner
Extension activée
problème présent
Extension désactivée
problème absent
Ce test apporte déjà une information très forte.
42. Évitez de réinstaller immédiatement tout phpBB
Lorsqu’une extension provoque une erreur, certains administrateurs pensent directement :
Code : Tout sélectionner
Je vais réinstaller le forum.
Dans la majorité des cas, c’est excessif.
Si le cœur phpBB fonctionnait avant l’installation de l’extension, commencez par diagnostiquer cette extension.
Une réinstallation générale peut compliquer la situation et faire perdre la trace de la cause réelle.
43. Ne modifiez pas le cœur de phpBB pour faire fonctionner une extension
Une extension correctement conçue doit utiliser les mécanismes prévus par phpBB.
Si une procédure vous demande de modifier de nombreux fichiers du cœur uniquement pour installer une fonctionnalité censée être une extension moderne, vérifiez attentivement ce que vous installez.
Modifier le cœur complique :
[]les mises à jour ;
[]le diagnostic ;
[]la maintenance ;
[]le retour en arrière.
44. Extension désactivée, données supprimées, fichiers supprimés : trois états différents
Il est utile de bien distinguer ces étapes.
Extension désactivée
Code : Tout sélectionner
Les fichiers sont présents.
Les données sont présentes.
L’extension n’est plus active. Données supprimées
Code : Tout sélectionner
L’extension est désactivée.
Ses données installées peuvent avoir été supprimées.
Les fichiers sont encore présents.
Fichiers supprimés
Code : Tout sélectionner
Le code de l’extension n’est plus présent sur le serveur.
Ces trois opérations ne doivent pas être confondues.
45. Mise à jour et désinstallation ne sont pas la même chose
Mise à jour :
Code : Tout sélectionner
Je veux conserver l’extension et ses données,
mais utiliser une version plus récente.
Désinstallation :
Code : Tout sélectionner
Je ne veux plus de cette extension
et je peux éventuellement supprimer ses données.
Si vous mélangez les deux procédures, vous risquez de perdre des informations inutilement.
46. Avant une mise à jour, lisez le journal des changements
Le changelog peut signaler :
[]une nouvelle version minimale de PHP ;
[]une nouvelle version minimale de phpBB ;
[]une migration importante ;
[]une incompatibilité connue ;
[]une nouvelle dépendance ;
[]une étape particulière de mise à jour.
Ne considérez pas toutes les mises à jour comme un simple remplacement de fichiers.
47. Une nouvelle version n’est pas toujours une mise à jour directe
Passer de :
Code : Tout sélectionner
1.2.0
à :
Code : Tout sélectionner
1.2.1
est souvent simple.
Mais passer de :
Code : Tout sélectionner
1.x
à :
Code : Tout sélectionner
3.x
peut nécessiter une procédure particulière.
Vérifiez toujours si les versions intermédiaires sont nécessaires ou si une migration spécifique est documentée.
48. Que préparer lorsqu’on demande de l’aide ?
Évitez le message :
Code : Tout sélectionner
Mon extension ne marche pas.
Donnez plutôt :
Code : Tout sélectionner
Version phpBB :
Version PHP :
Nom de l’extension :
Version de l’extension :
Extension neuve ou mise à jour :
Moment exact où l’erreur apparaît :
Message d’erreur :
Extrait pertinent des logs :
Autres extensions récemment modifiées :
Avec ces informations, un diagnostic devient beaucoup plus rapide.
49. Exemple d’installation correcte
Vous téléchargez une extension dont l’identifiant est :
Code : Tout sélectionner
exemple/outils
Après extraction, vous obtenez :
Code : Tout sélectionner
exemple/
outils/
composer.json
ext.php
language/
config/
Vous envoyez :
Code : Tout sélectionner
exemple/
dans :
Code : Tout sélectionner
ext/
Le résultat final est :
Code : Tout sélectionner
ext/
exemple/
outils/
composer.json
ext.php
language/
config/
Vous ouvrez ensuite la gestion des extensions dans le PCA.
L’extension apparaît.
Vous vérifiez sa compatibilité.
Vous l’activez.
Vous configurez ensuite ses éventuelles options et permissions.
C’est le scénario normal.
50. Exemple d’une mise à jour propre
Vous utilisez :
Code : Tout sélectionner
exemple/outils 1.0.0
Une version :
Code : Tout sélectionner
1.1.0
est publiée.
La documentation confirme qu’une mise à jour directe est possible.
Vous procédez ainsi :
Code : Tout sélectionner
1. Sauvegarde si nécessaire.
2. Désactivation selon la procédure prévue.
3. Remplacement propre des fichiers.
4. Purge du cache si nécessaire.
5. Réactivation.
6. Exécution des migrations par phpBB.
7. Vérification de la version.
8. Test du PCA.
9. Test du forum public.
10. Vérification des données existantes.
Vous ne supprimez pas les données puisque vous effectuez une mise à jour.
51. Exemple d’une désinstallation définitive
Vous ne voulez plus utiliser l’extension.
La logique devient :
Code : Tout sélectionner
1. Vérifier si des données doivent être conservées.
2. Sauvegarder si nécessaire.
3. Désactiver l’extension.
4. Vérifier le forum.
5. Supprimer les données uniquement si la suppression définitive est souhaitée.
6. Supprimer ensuite les fichiers.
7. Vérifier le forum à nouveau.
Cette procédure est très différente d’une mise à jour.
52. Les erreurs les plus fréquentes avec les extensions phpBB
Retenez particulièrement celles-ci :
[]envoyer le ZIP sans le décompresser ;
[]créer un dossier de version supplémentaire ;
[]supprimer le vendor attendu ;
[]placer l’extension au mauvais endroit ;
[]installer une version incompatible avec phpBB ;
[]installer une version incompatible avec PHP ;
[]supprimer les fichiers alors que l’extension est encore active ;
[]supprimer les données pendant une simple mise à jour ;
[]copier une nouvelle version sans lire les instructions ;
[]ignorer les migrations ;
[]conclure qu’une extension est cassée alors qu’une permission manque ;
[]vider le cache en espérant réparer toutes les erreurs ;
[]modifier le cœur de phpBB au hasard pour contourner un problème ;
[]installer directement en production sans possibilité de retour arrière.
53. Une méthode de diagnostic à retenir
Lorsqu’une extension pose problème, procédez toujours dans cet ordre :
Code : Tout sélectionner
1. Où sont les fichiers ?
2. L’arborescence est-elle correcte ?
3. Quelle version de l’extension est installée ?
4. Est-elle compatible avec ma version de phpBB ?
5. Est-elle compatible avec ma version de PHP ?
6. Existe-t-il des dépendances ?
7. L’erreur apparaît-elle pendant l’activation ou après ?
8. Que disent les logs ?
9. Le problème disparaît-il lorsque l’extension est proprement désactivée ?
10. Les permissions ou la configuration sont-elles en cause ?
Cette méthode est beaucoup plus fiable que de supprimer des fichiers ou modifier la base de données au hasard.
En résumé
Pour installer et gérer correctement une extension phpBB, retenez surtout ceci :
[]Les extensions se placent dans le dossier
Code : Tout sélectionner
ext/.
[]Le chemin technique suit généralement la structureCode : Tout sélectionner
vendor/extension.
[]Le fichierCode : Tout sélectionner
composer.jsondoit se trouver au bon niveau.
[]Un dossier de version supplémentaire est une cause fréquente d’extension non détectée.
[]Vérifiez toujours la compatibilité avec phpBB et PHP.
[]Une extension doit être activée depuis les mécanismes prévus par phpBB.
[]Désactiver une extension ne supprime normalement pas ses données.
[]Supprimer les données est une opération différente et potentiellement irréversible.
[]Une mise à jour ne doit pas être confondue avec une désinstallation.
[]Ne supprimez pas brutalement le dossier d’une extension encore active.
[]Les migrations servent à faire évoluer proprement l’installation.
[]Une extension active mais invisible peut simplement nécessiter une configuration ou des permissions.
[]En cas d’erreur, consultez les logs et modifiez une seule chose à la fois.
[]Testez les extensions importantes avant de les déployer sur un forum en production.
Une extension phpBB correctement installée n’est donc pas simplement un dossier copié sur le serveur.
Il faut considérer l’ensemble du cycle :
Code : Tout sélectionner
Télécharger
→ vérifier
→ installer
→ activer
→ configurer
→ maintenir
→ mettre à jour
→ désactiver
→ éventuellement désinstaller
Une fois cette logique comprise, la plupart des problèmes liés aux extensions deviennent beaucoup plus simples à identifier et surtout beaucoup plus sûrs à corriger.