PhpBB Lab Académie

Rechercher dans ce cours

Sauvegarder, restaurer et mettre à jour son forum phpBB

Auteur : phpBB-Lab. Date de cette version : jeu. 17 sept. 2026 12:12.

Copier les fichiers du forum sans oublier ses données

Objectif de la leçon

Compléter S1 par une copie intégrale des fichiers, conserver les éléments particuliers du forum et distinguer cette sauvegarde d’un export de cours School.

Explications

Le fichier SQL ne contient pas tout

La leçon précédente a produit phpbb_ecole.sql. Ce fichier décrit les tables et les données du forum. Il ne contient pas automatiquement les programmes PHP, les styles, les extensions ni les fichiers ajoutés sur le disque. Nous allons maintenant copier l’installation qui correspond à cet export, pendant la même période sans écriture.

Pensez à une pièce jointe : la base peut enregistrer son nom, son auteur et le message associé, tandis que ses octets sont conservés dans les fichiers du forum. Restaurer uniquement la base peut donc faire réapparaître une référence vers une pièce jointe absente. À l’inverse, disposer du fichier sans les informations de la base ne reconstitue pas son message ni ses autorisations.

Dans notre laboratoire, nous avons créé un témoin plus simple, preuve-maintenance.txt. Son texte « Fichier témoin du laboratoire phpBB. » permettra de vérifier une vraie donnée du disque sans introduire de document personnel. Le sujet « Maintenance — témoin avant sauvegarde » servira séparément à vérifier les données SQL. Les deux témoins sont complémentaires.

Copier le dossier réellement utilisé

Notre dossier source est exactement :

C:\wamp64\www\forum-ecole



Ne choisissez pas le ZIP d’installation téléchargé autrefois, ni un dossier de phpBB extrait à côté. Le paquet d’origine fournit le logiciel de départ ; il ne contient pas les réglages et ajouts qui existent aujourd’hui dans votre installation. Vérifiez dans le dossier source la présence de config.php et de preuve-maintenance.txt.

Dans le dossier privé S1, créez un sous-dossier fichiers. Avec l’Explorateur, sélectionnez le dossier forum-ecole dans C:\wamp64\www, puis utilisez Copier. Ouvrez ensuite le sous-dossier fichiers de S1 et utilisez Coller. Au clavier, Copier et Coller correspondent habituellement à Ctrl+C et Ctrl+V. N’utilisez pas Couper : l’installation source doit rester à sa place.

Le résultat attendu est S1, puis fichiers, puis forum-ecole, puis les fichiers de l’installation. En ouvrant cette dernière copie, vous devez retrouver config.php directement, sans un deuxième niveau forum-ecole ajouté par erreur. S’il existe déjà un dossier du même nom dans S1, ne fusionnez pas des sauvegardes prises à des dates différentes. Utilisez un nouveau dossier S1 horodaté et recommencez la paire complète.

Reconnaître les éléments que l’on conserve

config.php permet à phpBB de joindre sa base. Il contient notamment le nom de la base, le compte SQL, son mot de passe et le préfixe des tables. Ce fichier est nécessaire pour comprendre et reconstruire l’installation ; il est aussi confidentiel. Ne le publiez pas, ne le joignez pas à un sujet d’aide et ne recopiez pas son mot de passe dans inventaire.txt.

Le dossier files conserve normalement les pièces jointes. Le dossier images peut contenir des images particulières et les avatars téléversés, selon les réglages du forum. ext contient les fichiers des extensions ; styles contient les fichiers des styles. Leurs réglages et leur état d’activation se trouvent aussi dans la base. Nous conservons ces dossiers même si vous pensez n’avoir rien personnalisé.

store peut contenir des sauvegardes ou des fichiers de travail. Copiez-le dans ce point complet et gardez à l’esprit qu’il peut lui-même contenir des informations privées. Conservez également les langues, vendor et les autres dossiers du logiciel. Nous ne faisons pas ici un tri entre fichiers jugés utiles et inutiles : le point S1 est une copie de l’installation entière.

Le dossier cache contient des informations générées que phpBB peut recréer. Cela ne vous autorise pas à supprimer des éléments dans la source pendant la sauvegarde. Copiez le dossier avec le reste. Au moment de préparer un clone, une leçon expliquera précisément quels contenus générés vider et quels fichiers de protection conserver. Sauvegarder et préparer une copie à démarrer sont deux étapes distinctes.

Les fichiers dont le nom commence par un point, notamment .htaccess, comptent aussi. Certains outils peuvent les masquer. Copier le dossier complet avec l’Explorateur évite une sélection manuelle limitée à ce que l’écran affiche. Pour contrôler les noms, activez si nécessaire l’affichage des extensions et des éléments masqués dans les options de l’Explorateur ; le chemin de ces commandes varie entre Windows 10 et Windows 11. Le point initial d’un nom n’implique pas à lui seul l’attribut « masqué » sous Windows.

Contrôler la fin de la copie

Attendez la fin de l’opération et lisez tout message de copie. Une boîte de dialogue proposant d’ignorer un fichier ne constitue pas un succès. Notez le chemin concerné et résolvez la cause. Vérifiez d’abord l’espace disponible et que vous disposez des droits de lecture sur le dossier source et d’écriture dans votre dossier privé. N’accordez pas des droits universels au serveur pour contourner un problème de copie locale.

Vous pouvez comparer dans les propriétés le nombre de fichiers, le nombre de dossiers et la taille totale entre la source et la copie. Comparez la taille des fichiers, pas uniquement « Taille sur le disque », qui dépend du support. Ces contrôles repèrent des oublis importants ; ils ne prouvent pas que chaque fichier a exactement le bon contenu.

Ouvrez le fichier témoin dans la copie avec un éditeur et relisez sa phrase. Vérifiez la présence de config.php sans communiquer son contenu. Retrouvez les dossiers files, images, ext, styles, store et cache. Si vous aviez déjà des pièces jointes fictives dans le laboratoire, relevez un exemple à tester sur le futur clone ; ne créez pas de nouvelle pièce jointe maintenant, puisque les écritures sont gelées.

Ne pas confondre les différentes sortes d’export

Le JSON de School que vous importez dans l’Académie décrit un cours, ses chapitres, ses leçons et ses questions. C’est un fichier pédagogique. Il ne sauvegarde pas tout le forum et ne remplace ni phpbb_ecole.sql ni la copie des fichiers. Un ZIP du dossier forum-ecole ne remplace pas davantage l’export SQL.

phpBB propose aussi sa propre sauvegarde de base dans le panneau d’administration. Cette fonctionnalité a un format et un emplacement prévus par phpBB. Son écran de restauration attend des sauvegardes créées par cette fonctionnalité. Pour conserver un parcours clair, nous utilisons phpMyAdmin pour notre export SQL et nous utiliserons phpMyAdmin pour son import. Nous ne déplacerons pas phpbb_ecole.sql dans store en espérant l’importer avec un autre outil.

Enfin, une copie locale dans Documents reste une donnée privée du compte Windows concerné, pas un coffre automatiquement chiffré. Vérifiez qui peut accéder à votre ordinateur et si Documents est synchronisé avec un service. Ne créez aucun lien public vers S1. Nous préparerons à la leçon suivante une seconde copie indépendante et un relevé de contrôle.

Exemple commenté

Exemple — les deux moitiés d’une restauration

Dans une sauvegarde incomplète, Camille retrouve la discussion d’un membre, mais le téléchargement d’une ancienne pièce jointe échoue. Elle possède les informations du message dans SQL ; elle a oublié files lors de la copie. Le titre visible ne prouve donc pas que tout a été restauré.

Dans notre atelier, nous vérifierons d’abord le sujet témoin et le fichier texte témoin. Si votre installation contient des pièces jointes, leurs téléchargements feront partie des tests supplémentaires. Ne fabriquez pas une preuve positive en ajoutant après coup au clone un fichier absent de S1 : cela masquerait l’oubli à corriger.

Exercice à réaliser

Exercice — compléter la moitié fichiers de S1

1. Sur Windows, vérifiez que la période sans écriture est toujours respectée et que le SQL de la leçon précédente appartient à cette même période.
2. Créez fichiers dans votre dossier S1. Depuis C:\wamp64\www, copiez le dossier forum-ecole entier dans ce sous-dossier.
3. Attendez la fin sans ignorer d’erreur. Dans la copie, retrouvez config.php directement dans fichiers\forum-ecole.
4. Contrôlez les dossiers files, images, ext, styles, store et cache, ainsi que .htaccess lorsqu’il existe à l’emplacement correspondant de la source.
5. Lisez preuve-maintenance.txt dans la copie. Sa phrase doit être intacte. Comparez les propriétés de la source et de la copie.
6. Dans preuves.txt, notez les heures de copie, les chemins source et destination et vos observations. Écrivez aussi, en une phrase, ce que le JSON School ne sauvegarde pas.

Correction et résultat attendu

Correction et résultat attendu

Le dossier S1 contient phpbb_ecole.sql et fichiers\forum-ecole, sans fusion avec un ancien point. Le dossier source existe toujours. Le fichier témoin se lit dans la copie et les éléments particuliers de phpBB sont présents. Toute erreur de copie a été résolue avant de déclarer cette étape terminée.

La réponse sur School est : un export de cours conserve le contenu pédagogique, mais pas l’installation complète, les comptes, les permissions et tous les fichiers du forum. Notre sauvegarde de maintenance réunit l’export SQL de la base et la copie intégrale des fichiers. Le résultat n’est encore qu’un point candidat : sa restauration dans un environnement séparé donnera une preuve beaucoup plus forte.

À retenir

Copiez l’installation utilisée, et pas seulement le paquet phpBB d’origine. Gardez config.php, les données téléversées, les styles, extensions et fichiers de protection. La copie doit rester privée et appartenir au même état que le SQL. Un export JSON School n’est pas une sauvegarde complète du forum.

Seuil de réussite, en pourcentage : 100 %. QCM obligatoire pour terminer le cours.

Sommaire du cours

Préparer une maintenance que l’on peut vérifier

  1. Comprendre ce qu’il faut retrouver après une panne
  2. Relever un état technique et préparer son carnet de maintenance
  3. Créer des témoins et organiser une fenêtre sans écritures

Constituer une sauvegarde complète et contrôlée

  1. Exporter toute la base dans un fichier SQL réutilisable
  2. Copier les fichiers du forum sans oublier ses données
  3. Contrôler S1, conserver une seconde copie et rouvrir la source

Restaurer et vérifier une copie indépendante

  1. Restaurer la base dans une destination indépendante
  2. Relier les fichiers au clone et isoler son fonctionnement
  3. Prouver la restauration avec les contenus et les accès

Mettre à jour sur une copie vérifiée

  1. Choisir une version cible et vérifier sa compatibilité
  2. Sauvegarder le clone puis remplacer les fichiers du cœur
  3. Terminer la migration nécessaire et vérifier le résultat

Revenir en arrière et entretenir sa méthode

  1. Revenir à un état sauvegardé dans un second clone isolé
  2. Diagnostiquer un échec et choisir la suite de la maintenance
  3. Valider son projet et construire une routine de sauvegarde