Relever un état technique et préparer son carnet de maintenance
Objectif de la leçon
Relever les versions et les emplacements réels, distinguer les deux ports du laboratoire et établir un carnet sans secrets qui servira aux comparaisons.
Explications
Une fiche avant les manipulations
Vous n’avez pas besoin d’apprendre par cœur tous les noms de dossiers. Vous avez besoin d’une fiche fiable, facile à relire quand plusieurs copies existeront. Cette fiche vous évitera de changer les fichiers d’un forum en regardant la base d’un autre.
Les exercices sont conçus pour le laboratoire WampServer du premier cours. Si votre installation se trouve sur un hébergement distant, ne transposez pas les chemins Windows : préparez d’abord un environnement équivalent et une procédure adaptée avec la personne qui gère cet hébergement. Ici, nous apprenons un mécanisme concret en local ; nous ne basculons pas votre site public vers une nouvelle version.
Relever les versions sans les modifier
Connectez-vous à Forum école avec CamilleAdmin et ouvrez le Panneau d’administration. Sa page d’accueil présente les statistiques et informations du forum. Relevez « Version du forum », « Version de PHP » et « Serveur de base de données ». La référence utilisée pour écrire les premières leçons est phpBB 3.3.17 ; inscrivez néanmoins ce que votre propre installation affiche.
PHP exécute le programme phpBB ; MySQL ou MariaDB conserve les tables. WampServer réunit ces composants, mais son numéro de version n’est pas celui de phpBB. Quand nous choisirons une version cible, il faudra comparer ses exigences aux composants réellement utilisés. Ne changez pas PHP maintenant simplement parce qu’un autre numéro paraît plus récent.
Dans le Panneau d’administration, consultez également « Gérer les extensions » et « Gérer les styles ». Notez les extensions réellement activées et le style utilisé. Si vous n’avez rien ajouté au laboratoire, ne recopiez pas la liste des extensions du site public phpBB Lab : c’est une autre installation. Notez « aucune extension ajoutée » lorsque cela correspond à votre laboratoire.
Lire config.php sans y toucher
Dans l’Explorateur, ouvrez C:\wamp64\www\forum-ecole. Rendez les extensions de noms de fichiers visibles avec l’option correspondante de l’Explorateur. Selon Windows, elle se trouve dans les options d’affichage ou les options des dossiers. Lisez les noms complets : config.php et config.php.txt ne sont pas le même fichier.
Ouvrez config.php avec un éditeur de texte, tel que le Bloc-notes, sans enregistrer de modification. Vous recherchez les lignes portant $dbhost, $dbport, $dbname, $dbuser et $table_prefix. Le préfixe est le début commun de noms de tables, souvent phpbb_. S’il vaut phpbb_, la table de configuration s’appelle phpbb_config. Avec un autre préfixe, son nom change. Nous ne supposerons donc jamais que tous les lecteurs ont gardé la valeur proposée à l’installation.
Notez l’hôte SQL, le port SQL, la base et le préfixe dans votre carnet privé. Le nom du compte SQL peut aussi y figurer pour distinguer les acteurs. Ne recopiez pas $dbpasswd, et ne faites pas de capture publique de ce fichier. Fermez l’éditeur sans enregistrer.
Deux services, deux ports
Le navigateur contacte le serveur web. Sur notre adresse http://localhost/forum-ecole/, aucun port n’est écrit : avec HTTP, cela correspond habituellement au port web 80. Si vous aviez configuré http://localhost:8080/forum-ecole/, votre port web serait 8080. Conservez alors ce port dans toutes les adresses de laboratoire qui suivent.
Le serveur web, par l’intermédiaire de PHP, contacte ensuite MySQL ou MariaDB sur son port SQL. Ce port a été relevé pendant l’installation ; il peut différer selon votre configuration Wamp. On ne remplace pas le port web par le port SQL dans le navigateur.
Pour vérifier ce dernier, ouvrez phpMyAdmin du moteur retenu dans Wamp. Sélectionnez phpbb_ecole, ouvrez l’onglet SQL et relisez la requête suivante avant de l’exécuter :
SELECT @@port AS port_du_serveur;
SELECT demande ici une information ; la requête ne modifie pas les données. Le résultat est nommé port_du_serveur. Comparez-le au port prévu pour la connexion de phpBB. Si vous consultez un autre moteur de Wamp que celui du forum, les informations ne désignent pas le même serveur : revenez au moteur choisi à l’installation. Si config.php laisse le port vide, phpBB emploie le port par défaut de sa connexion ; notez cette particularité et le port réellement constaté, sans improviser une correction.
Réserver les noms des futures copies
Nous emploierons trois installations distinctes au fil du cours. Pour l’instant, seule la source existe ; réserver un nom dans le carnet ne crée ni dossier ni base.
Source : dossier forum-ecole, base phpbb_ecole, compte SQL phpbb_ecole.
Copie de restauration : dossier forum-ecole-restauration, base phpbb_ecole_restauration, compte SQL phpbb_ecole_restauration.
Copie de retour : dossier forum-ecole-retour, base phpbb_ecole_retour, compte SQL phpbb_ecole_retour.
Les nouveaux comptes SQL auront des droits limités à leur propre base. Les comptes du forum, eux, seront retrouvés dans les bases restaurées : CamilleAdmin et les comptes de test ne changent pas de nom. La différence sera l’installation sur laquelle vous les utilisez.
Préparer la liste des contrôles
Après restauration, nous rechercherons un message témoin et un fichier témoin. Nous vérifierons aussi le compte connecté, une publication ordinaire, l’accès privé d’un adhérent et le refus d’un membre non autorisé. L’équipe devra conserver sa modération locale sur Questions publiques et Bac à sable de modération, sans devenir administratrice ni modératrice globale.
Les compteurs de sujets et de messages sont utiles comme repères, mais ils ne constituent pas à eux seuls un verdict. Un nouveau message d’essai peut les faire évoluer. Votre carnet distinguera donc les contrôles avant et après chaque action volontaire. Chaque ligne comporte le résultat attendu, le résultat observé et, en cas d’écart, la décision de continuer ou de s’arrêter.
Exemple commenté
Exemple — une fiche qui aide vraiment
Camille inscrit : « Source ; phpBB : valeur affichée ; PHP : valeur affichée ; base : phpbb_ecole ; moteur : celui affiché ; port SQL : résultat de SELECT ; port web : celui de mon adresse ; préfixe : valeur de config.php ; style : prosilver ; extensions ajoutées : aucune ».
Elle ajoute : « Contrôle privé : eleve_test peut lire Vie de l’association ; inscrit_test ne peut pas lire Coordination ». Aucun mot de passe ne figure sur la fiche. Lorsqu’elle créera un clone, elle préparera une autre fiche avec les noms de ce clone. Elle ne modifiera pas la ligne source pour lui donner les noms de la copie.
Exercice à réaliser
Exercice — remplir votre fiche réelle
1. Avec CamilleAdmin sur la source, relevez les trois informations de version du Panneau d’administration. Notez la date et l’heure de ce relevé.
2. Relevez les styles et extensions réellement utilisés dans le laboratoire. Signalez toute intégration extérieure que vous auriez ajoutée : envoi automatique, synchronisation, authentification externe ou tâche programmée.
3. Lisez le config.php de la source sans l’éditer. Relevez seulement les paramètres non secrets utiles, puis fermez le fichier sans enregistrer.
4. Vérifiez le port SQL avec la requête expliquée plus haut. Inscrivez séparément le port web déduit de votre adresse habituelle.
5. Réservez dans vos notes les noms de la copie de restauration et de la copie de retour. Contrôlez qu’aucune ancienne installation importante ne porte déjà ces noms. En cas de collision, choisissez de nouveaux noms cohérents et consignez leur correspondance avant le chapitre 3.
6. Préparez quatre lignes de recette : retrouver un message ; ouvrir un fichier témoin ; tester un accès autorisé ; tester un refus. Les deux premières seront complétées à la leçon suivante.
Résultat attendu : une fiche avec les valeurs réellement observées. Aucune version n’a encore été changée et aucune base supplémentaire n’a encore été importée.
Correction et résultat attendu
Correction
La base source attendue dans le parcours est phpbb_ecole. Le dossier source est forum-ecole. Ils ont des noms proches, mais ne sont pas interchangeables. Le préfixe n’est ni le nom du dossier, ni le nom de la base : c’est celui qui figure dans config.php et au début des noms de tables.
Votre port SQL est le résultat obtenu sur le moteur réellement utilisé par le forum. Il n’existe pas une valeur à recopier pour tous les postes. Votre port web reste lié à l’adresse du navigateur. Une fiche qui indique seulement « port 3306 » sans préciser le service n’est pas assez claire.
Si une intégration externe a été ajoutée, signalez ce changement avant de démarrer une copie. Désactiver le courriel natif de phpBB ne neutralisera pas forcément cette intégration. Le parcours prévu n’en a pas besoin ; une installation différente exige un plan d’isolation adapté avant sa première exécution.
Un lecteur qui reprend après une interruption doit pouvoir retrouver la bonne installation grâce à votre fiche, sans connaître vos mots de passe. C’est ce niveau de précision que nous cherchons.
À retenir
À retenir
Relevez les versions effectivement installées. Distinguez dossier, base, compte SQL et compte du forum. Le préfixe de tables vient de config.php. Le port web et le port SQL correspondent à deux services différents. Un carnet utile décrit les contrôles et leurs résultats, sans y mettre de secrets.
Seuil de réussite, en pourcentage : 100 %. QCM obligatoire pour terminer le cours.