Recherche phpBB ne fonctionne plus : réparer l’index et retrouver les anciens messages

Statut : Sans réponse

Guides pratiques, solutions et procédures détaillées pour résoudre les problèmes courants, corriger les erreurs et mieux administrer votre forum phpBB.


phpBB-Lab
Fondateur
Messages : 43
Enregistré le : dim. 6 sept. 2026 00:22
Localisation : Liège Belgique

Recherche phpBB ne fonctionne plus : réparer l’index et retrouver les anciens messages

Message par phpBB-Lab »

Recherche phpBB ne fonctionne plus : réparer l’index et retrouver les anciens messages

La recherche de votre forum phpBB ne trouve plus certains messages ?

Vous savez qu’un mot existe dans un ancien sujet, vous le recherchez, mais phpBB répond qu’aucun résultat n’a été trouvé ?

Peut-être que :

  • []les nouveaux messages apparaissent dans les résultats mais pas les anciens ;
    []la recherche ne trouve plus rien depuis une migration ;
    []la recherche fonctionnait avant une mise à jour puis s’est arrêtée ;
    []phpBB indique que certains mots sont « trop communs » ;
    []un mot de deux ou trois caractères est systématiquement ignoré ;
    []la recherche fonctionne pour certains termes mais pas pour d’autres ;
    []la recherche affiche « Vous ne pouvez pas utiliser la recherche actuellement » ;
    []la recherche fonctionne pour l’administrateur mais pas pour certains membres ;
    []la reconstruction de l’index semble ne rien changer ;
    []le problème est apparu après un changement de MySQL vers MariaDB ;

  • le problème est apparu après une conversion depuis un autre logiciel de forum.

Ces symptômes sont très différents mais concernent tous le même ensemble de mécanismes :

le système de recherche et son index.

Une erreur fréquente consiste à considérer la recherche comme une simple requête effectuée directement dans tous les messages.

Ce n’est généralement pas ainsi que phpBB fonctionne.

Pour pouvoir retrouver rapidement un mot parmi des dizaines de milliers, voire des millions de messages, phpBB utilise un moteur de recherche et un index.

On peut représenter le principe ainsi :

Code : Tout sélectionner

Messages du forum
↓
Moteur de recherche
↓
Index
↓
Recherche de l’utilisateur
↓
Résultats

Si l’index est absent, incomplet, obsolète ou construit pour un autre moteur que celui actuellement utilisé, les messages peuvent parfaitement exister dans le forum tout en restant introuvables dans la recherche.

L’objectif de ce guide est de diagnostiquer méthodiquement ce type de problème sans modifier la base de données au hasard.

1. Commencez par déterminer exactement ce qui ne fonctionne pas

Avant de reconstruire quoi que ce soit, effectuez plusieurs recherches simples.

Choisissez :

  • []un mot présent dans un message très récent ;
    []un mot présent dans un ancien message ;
    []un mot relativement rare ;
    []un mot relativement fréquent ;

  • si possible, le titre exact d’un sujet connu.

Notez les résultats.

Par exemple :

Code : Tout sélectionner

Message publié aujourd’hui : trouvé
Message publié en 2024 : trouvé
Message publié en 2018 : introuvable
Message publié en 2012 : introuvable

Ce comportement est extrêmement intéressant.

Il suggère que la recherche fonctionne encore, mais que l’index pourrait ne contenir qu’une partie des anciens messages.

Autre exemple :

Code : Tout sélectionner

Tous les nouveaux messages : introuvables
Anciens messages : trouvés

Dans ce cas, vérifiez notamment si la mise à jour de l’index lors de nouvelles publications est toujours active.

Autre scénario :

Code : Tout sélectionner

Aucun mot : aucun résultat

Ici, il faut vérifier plus largement :

  • []si la recherche est activée ;
    []quel moteur est sélectionné ;
    []si son index existe ;
    []si l’index a réellement été construit.

2. Vérifiez que la recherche phpBB est réellement activée

Dans le PCA, ouvrez les paramètres de recherche.

Selon votre traduction, vous trouverez généralement cette page dans une rubrique du type :

PCA → Général → Configuration du serveur → Paramètres de recherche

Vérifiez notamment que les fonctionnalités de recherche sont activées.

Si la recherche est désactivée globalement, reconstruire l’index ne résoudra évidemment pas le problème.

Commencez toujours par vérifier la configuration la plus simple avant de reconstruire plusieurs millions de messages.

3. Comprendre ce qu’est un moteur de recherche phpBB

phpBB peut utiliser différents systèmes de recherche.

Selon votre installation et votre base de données, vous pouvez notamment rencontrer :

Code : Tout sélectionner

Fulltext native
Fulltext MySQL

ainsi que d’autres moteurs dans certaines configurations ou via des solutions spécifiques.

Le moteur sélectionné détermine notamment :

  • []comment les mots sont indexés ;
    []où l’index est stocké ;
    []quelles limitations s’appliquent ;
    []comment les recherches sont exécutées.

C’est donc une information fondamentale lorsqu’une recherche ne fonctionne plus.

4. Vérifiez quel moteur est actuellement sélectionné

Dans :

PCA → Général → Configuration du serveur → Paramètres de recherche

repérez le moteur de recherche utilisé.

Notez-le.

Par exemple :

Code : Tout sélectionner

Moteur de recherche :
Fulltext native

ou :

Code : Tout sélectionner

Moteur de recherche :
Fulltext MySQL

Ne changez pas immédiatement cette valeur.

Commencez par savoir précisément ce que votre forum utilise actuellement.

5. L’index doit correspondre au moteur utilisé

C’est l’un des points les plus importants.

Imaginez :

Code : Tout sélectionner

Index construit :
Fulltext native

Moteur actuellement sélectionné :
Fulltext MySQL

Vous pouvez avoir construit un index parfaitement valide sans que phpBB utilise celui que vous pensez.

Lorsque vous diagnostiquez la recherche, vérifiez donc toujours :

Code : Tout sélectionner

Moteur actif

Index réellement créé

Si vous changez de moteur, assurez-vous que le nouvel index correspondant existe avant de considérer la migration terminée.

6. Où gérer l’index de recherche ?

Dans le PCA, ouvrez :

Maintenance → Index de recherche

Le libellé peut varier légèrement selon votre langue.

Cette page permet généralement de voir les moteurs disponibles et l’état de leur index.

Vous pouvez notamment y trouver les possibilités de :

  • []créer un index ;
    []supprimer un index ;

  • observer sa progression.

Sur un forum important, la construction peut durer longtemps.

Ne fermez pas immédiatement la page simplement parce que l’opération n’est pas instantanée.

7. Cas classique : les messages existent mais n’ont jamais été indexés

Ce problème apparaît fréquemment après :

  • []une conversion depuis un autre logiciel ;
    []une importation personnalisée ;
    []une restauration ;
    []une migration mal terminée ;

  • une modification directe de la base de données.

Imaginez qu’un script importe :

Code : Tout sélectionner

250 000 messages

directement dans la table des messages.

Ils apparaissent parfaitement dans les sujets.

Les utilisateurs peuvent les lire.

Mais si le processus d’import n’a pas correctement alimenté ou reconstruit l’index de recherche, phpBB peut ne pas savoir les retrouver.

Vous obtenez alors :

Code : Tout sélectionner

Lecture du message : OK
Recherche du message : aucun résultat

La donnée existe.

C’est l’index qui ne la connaît pas.
8. Symptôme très révélateur : seuls les nouveaux messages sont trouvés

Après une migration, vous pouvez rencontrer :

Code : Tout sélectionner

Ancien message importé : introuvable
Nouveau message publié après migration : trouvé

C’est un excellent indice.

Le système de recherche fonctionne probablement pour les nouvelles publications.

Mais l’ancien contenu n’a pas été complètement indexé.

Dans ce cas, reconstruire correctement l’index est beaucoup plus logique que modifier les permissions ou le code de recherche.

9. Reconstruire l’index correctement

Dans :

PCA → Maintenance → Index de recherche

identifiez le moteur que vous utilisez réellement.

Si l’index est manifestement incomplet ou incohérent, une procédure classique consiste à :

  1. []vérifier le moteur actuellement sélectionné ;
    []supprimer l’index de ce moteur lorsque cette opération est nécessaire ;
    []recréer complètement l’index ;
    []attendre la fin réelle de l’opération ;

  2. effectuer plusieurs recherches de contrôle.

Ne supprimez pas un index au hasard simplement parce que la recherche d’un seul mot n’a rien donné.

Effectuez d’abord les diagnostics de ce guide.

10. Une reconstruction peut prendre longtemps

Sur un petit forum :

Code : Tout sélectionner

5 000 messages

l’opération peut être relativement rapide.

Sur un forum contenant :

Code : Tout sélectionner

500 000 messages

ou :

Code : Tout sélectionner

5 000 000 messages

la situation est complètement différente.

La durée dépend notamment :

  • []du nombre de messages ;
    []du moteur de recherche ;
    []de MariaDB/MySQL ;
    []du processeur ;
    []des performances du stockage ;
    []des limites de l’hébergement ;

  • de la charge simultanée du forum.

Ne relancez pas constamment la reconstruction parce qu’elle ne se termine pas immédiatement.

11. Ne lancez pas plusieurs reconstructions simultanément

Si une reconstruction est déjà en cours, évitez d’en démarrer une deuxième dans un autre onglet.

Vous pourriez inutilement :

  • []augmenter la charge serveur ;
    []solliciter fortement la base ;

  • rendre le diagnostic beaucoup plus difficile.

Une seule opération contrôlée vaut mieux que plusieurs tentatives lancées simultanément.

12. Sur un gros forum, choisissez le bon moment

Une reconstruction d’index peut être une opération lourde.

Sur une communauté très fréquentée, évitez si possible de lancer cette opération au moment de la plus forte activité.

Préférez une période plus calme.

Sur un très gros forum, surveillez :

  • []CPU ;
    []mémoire ;
    []MariaDB/MySQL ;
    []I/O disque ;

  • temps de réponse du forum.

Le but n’est pas de réparer la recherche en rendant tout le reste du forum inaccessible.

13. « Les mots sont trop communs »

Un autre problème très fréquent ressemble à ceci :

Code : Tout sélectionner

Les mots suivants ont été ignorés car ils sont trop communs

Vous recherchez pourtant un mot qui vous semble parfaitement pertinent.

Pourquoi phpBB l’ignore-t-il ?

Le moteur de recherche peut volontairement considérer certains termes comme trop fréquents.

Imaginez un forum consacré uniquement à Linux.

Le mot :

Code : Tout sélectionner

linux

peut apparaître dans une énorme proportion des messages.

Le moteur peut considérer qu’indexer ou rechercher ce mot apporte peu de discrimination entre les résultats.

14. Le seuil des mots communs

Avec le moteur Fulltext native, phpBB possède notamment un réglage concernant le seuil des mots communs.

Le principe est :

Code : Tout sélectionner

Mot présent dans une proportion très importante des messages
↓
Mot marqué comme commun
↓
Mot ignoré lors de certaines recherches

Ce seuil est configurable.

Une valeur de :

permet de désactiver cette logique de seuil dans la configuration correspondante.

Mais attention :

modifier le réglage ne transforme pas nécessairement instantanément un index déjà construit.

Si le contenu de l’index dépend de ce réglage, une reconstruction peut être nécessaire pour que les anciens messages soient traités selon la nouvelle configuration.

15. Ne mettez pas automatiquement le seuil à zéro

Le fait qu’un réglage puisse être désactivé ne signifie pas qu’il doit l’être sur tous les forums.

Sur un très gros forum, indexer et rechercher énormément de mots extrêmement communs peut :

  • []augmenter la taille de l’index ;
    []augmenter le travail nécessaire ;

  • produire énormément de résultats peu utiles.

Adaptez le réglage au contenu de votre communauté.

Un forum technique spécialisé peut avoir des besoins très différents d’un forum généraliste.

16. Les mots trop courts peuvent être ignorés

Autre scénario :

Vous recherchez :

ou :

ou un code produit très court.

phpBB répond qu’aucun mot valable n’a été fourni.

Le moteur peut avoir une longueur minimale de mot à indexer.

Dans les paramètres de recherche, vérifiez :

Nombre minimum de caractères indexés

ou le libellé équivalent.

Si cette valeur est :

un mot de deux caractères peut ne pas être indexé.

17. Les mots trop longs peuvent également être exclus

Il existe également une longueur maximale.

Un terme dépassant cette valeur peut ne pas faire partie de l’index.

C’est particulièrement important pour les communautés utilisant :

  • []références de produits ;
    []identifiants techniques ;
    []noms scientifiques ;
    []chaînes longues ;

  • numéros de modèle.

Vérifiez donc à la fois :

Code : Tout sélectionner

Longueur minimale
Longueur maximale

18. Modifier la longueur ne suffit pas toujours immédiatement

Supposons que votre ancien réglage soit :

Code : Tout sélectionner

Minimum : 3

et que vous décidiez désormais :

Code : Tout sélectionner

Minimum : 2

Les anciens messages ont été indexés lorsque la valeur était encore à 3.

Le mot de deux caractères n’existait donc pas nécessairement dans l’index.

Pour rendre cette nouvelle règle applicable à l’ancien contenu, une reconstruction de l’index peut être nécessaire.

19. Les réglages peuvent dépendre du moteur choisi

Ne supposez jamais qu’un réglage Fulltext native se comporte exactement de la même manière avec Fulltext MySQL.

Lorsque vous utilisez la recherche Fulltext MySQL, certaines limites peuvent également dépendre de la configuration du serveur de base de données.

Cela signifie qu’un administrateur peut modifier un réglage côté phpBB et constater que le comportement reste différent de ce qu’il attend.

Dans ce cas, vérifiez :

  • []le moteur réellement utilisé ;
    []les paramètres de phpBB ;
    []les limitations du serveur MySQL/MariaDB ;
    []les stopwords ou règles propres au moteur lorsque pertinentes.

20. Le changement MySQL vers MariaDB mérite une attention particulière

Après une migration d’hébergement, votre fournisseur peut remplacer :

Code : Tout sélectionner

MySQL

par :

Code : Tout sélectionner

MariaDB

sans que l’apparence du forum change.

Vous pouvez pourtant observer ensuite un problème de recherche.

Ne concluez pas automatiquement que MariaDB est incompatible avec phpBB.

Vérifiez plutôt :

  • []le moteur de recherche phpBB sélectionné ;
    []l’état de l’index ;
    []les réglages de recherche ;
    []les limites liées à la charge ;

  • la configuration du nouveau serveur.

Un changement de serveur implique souvent plusieurs modifications simultanées.

21. « Désolé, vous ne pouvez pas utiliser la recherche actuellement »

Ce message n’indique pas nécessairement un index cassé.

phpBB possède également un réglage permettant de désactiver temporairement les recherches lorsque la charge système dépasse un certain niveau.

Selon votre traduction, recherchez :

Limite de charge système pour la page de recherche

ou un libellé similaire.

Sur les systèmes concernés, phpBB peut comparer la charge système à la limite configurée.

Si elle est dépassée, la recherche est temporairement refusée.

22. Une mauvaise limite de charge peut bloquer la recherche alors que le serveur va bien

Après un changement de serveur, une valeur autrefois adaptée peut devenir inappropriée.

Vous pouvez donc obtenir :

Code : Tout sélectionner

Forum rapide
CPU normal
Recherche refusée

simplement parce que la limite de charge configurée déclenche le blocage.

Dans phpBB, une valeur :

désactive cette limitation de charge pour la recherche.

Cela ne signifie pas que tout administrateur doit obligatoirement la mettre à zéro.

Mais si vous obtenez précisément un message indiquant que la recherche est indisponible à cause de la charge, vérifiez ce réglage avant de reconstruire tout votre index.

23. Ne reconstruisez pas l’index pour un problème de limite de charge

C’est une distinction importante.

Si :

Code : Tout sélectionner

Index : correct
Résultats : normalement corrects
Mais recherche parfois interdite pour charge élevée

reconstruire l’index ne traite pas nécessairement la cause.

Le problème peut simplement être la configuration de la limite système.

Toujours diagnostiquer le message exact avant d’agir.

24. Les nouveaux messages n’apparaissent plus dans la recherche

Imaginez :

Code : Tout sélectionner

Messages jusqu’au 1er septembre : trouvés
Messages après le 1er septembre : introuvables

Le problème peut concerner la mise à jour automatique de l’index.

Avec Fulltext native, vérifiez notamment le réglage permettant la mise à jour du Fulltext.

Il doit normalement permettre au moteur d’ajouter les nouveaux messages dans l’index au fur et à mesure des publications.

25. Pourquoi désactiver la mise à jour de l’index peut poser problème

Sur un forum très chargé, un administrateur peut être tenté de désactiver certaines fonctions pour gagner des performances.

Mais si la mise à jour du moteur de recherche est désactivée :

Code : Tout sélectionner

Nouveau message publié
↓
Message enregistré
↓
Index non mis à jour
↓
Recherche ne le trouve pas

Plus le temps passe, plus l’index devient éloigné du contenu réel du forum.

26. Vérifiez les permissions de recherche

Si :

Code : Tout sélectionner

Administrateur : trouve le sujet
Utilisateur : ne le trouve pas

l’index n’est probablement pas votre premier suspect.

phpBB respecte les permissions.

Un utilisateur ne doit pas recevoir dans la recherche des messages provenant d’un forum qu’il n’est pas autorisé à consulter.

Vérifiez notamment :

  • []les permissions de lecture ;
    []les permissions de recherche du forum ;
    []les groupes concernés ;
    []les permissions définies directement sur l’utilisateur.

Pour approfondir ce point, consultez également :
Comprendre enfin les permissions phpBB : groupes, rôles, Oui, Non et Jamais

27. Comparez administrateur, membre et invité

Effectuez exactement la même recherche avec :

Code : Tout sélectionner

Compte administrateur
Compte membre normal
Visiteur déconnecté

Vous pouvez obtenir :

Code : Tout sélectionner

Administrateur : 25 résultats
Membre : 20 résultats
Invité : 12 résultats

Ce n’est pas forcément une erreur.

Certains forums peuvent être invisibles pour les invités ou réservés à certains groupes.

En revanche :

Code : Tout sélectionner

Administrateur : 25 résultats
Membre autorisé à tout lire : 0 résultat

mérite une investigation plus approfondie.

28. Recherche par auteur et recherche dans le contenu sont différentes

Ne mélangez pas deux diagnostics.

Vous pouvez avoir :

Code : Tout sélectionner

Recherche du pseudo : fonctionne
Recherche des mots contenus dans les messages : échoue

ou l’inverse.

La recherche d’un utilisateur et la recherche Fulltext dans le contenu ne dépendent pas exactement des mêmes mécanismes.

Lorsque vous demandez de l’aide, précisez donc :

Code : Tout sélectionner

Recherche par mot :
Recherche par auteur :
Recherche dans un forum :
Recherche globale :

29. Après une conversion depuis un autre forum

Les convertisseurs doivent transférer énormément de données :

  • []utilisateurs ;
    []forums ;
    []sujets ;
    []messages ;
    []permissions ;
    []pièces jointes selon la source ;

  • profils.

L’index de recherche peut être volontairement reconstruit ensuite plutôt que transféré.

C’est logique.

L’index n’est pas votre contenu original.

Il peut être régénéré à partir des messages.

Après une conversion, vérifiez donc systématiquement la recherche avant d’ouvrir définitivement le nouveau forum.

30. Après une restauration de base

Une restauration peut également créer des incohérences si la base restaurée et l’index attendu ne correspondent plus.

Imaginez :

Code : Tout sélectionner

Base restaurée :
sauvegarde de lundi

Index :
état différent

Selon le moteur utilisé, une reconstruction peut être nécessaire pour réaligner la recherche sur les messages réellement présents.

31. Ne modifiez pas directement les tables d’index

Avec Fulltext native, vous pouvez rencontrer des tables comme :

Code : Tout sélectionner

phpbb_search_wordlist
phpbb_search_wordmatch

Ne commencez pas à supprimer manuellement des lignes dans ces tables parce qu’un mot n’est pas trouvé.

phpBB possède les outils permettant de créer et supprimer son index proprement.

Une modification SQL manuelle peut créer un index incohérent beaucoup plus difficile à diagnostiquer.

32. L’index de recherche peut être reconstruit

C’est une différence importante entre :

Code : Tout sélectionner

Messages

et :

Code : Tout sélectionner

Index de recherche

Vos messages constituent des données essentielles.

L’index est une structure dérivée de ces messages.

Si un index est réellement corrompu ou incohérent, il peut être supprimé puis reconstruit avec les mécanismes prévus par phpBB.

Cela ne signifie pas que vous devez reconstruire l’index dès qu’un utilisateur ne trouve pas un mot.

Mais cela explique pourquoi une reconstruction correctement réalisée peut résoudre certains problèmes sans toucher aux messages eux-mêmes.

33. Faites tout de même une sauvegarde avant une grosse opération

Même si l’index peut être reconstruit, une sauvegarde de base reste recommandée avant une opération importante de maintenance.

Particulièrement si :

  • []le forum est ancien ;
    []la base est volumineuse ;
    []vous venez d’effectuer une migration ;
    []d’autres anomalies existent déjà.

Une bonne administration consiste à conserver une possibilité de retour arrière.

34. Tester la recherche après reconstruction
Ne vous contentez pas de voir :

Code : Tout sélectionner

Index créé

dans le PCA.

Testez réellement.

Préparez plusieurs références avant la reconstruction.

Par exemple :

Code : Tout sélectionner

Mot rare dans message de 2012
Mot rare dans message de 2018
Mot rare dans message de 2024
Mot rare dans message récent
Auteur ancien
Auteur récent

Puis effectuez exactement les mêmes recherches après la reconstruction.

Vous pourrez alors mesurer le résultat.

35. Un seul mot de test ne suffit pas

Supposons que vous testiez uniquement :

Code : Tout sélectionner

forum

et que phpBB l’ignore comme mot commun.

Vous pourriez conclure à tort :

La reconstruction n’a rien réparé.

Utilisez plusieurs mots, dont au moins un terme rare dont vous connaissez précisément l’emplacement.

36. Choisissez un mot témoin réellement utile

Le meilleur test est souvent un mot :

  • []assez long ;
    []non commun ;
    []présent dans un seul ou quelques messages ;
    []sans accent inhabituel si vous voulez d’abord simplifier le diagnostic.

Par exemple, si un ancien message contient un modèle très précis :

Code : Tout sélectionner

ZXQ7421

et que le moteur autorise cette longueur, ce terme peut constituer un excellent témoin.

37. Attention aux langues et alphabets

Les forums multilingues ou utilisant certains alphabets peuvent révéler des différences de comportement selon le moteur choisi.

Si la recherche fonctionne correctement en anglais mais pas dans une autre langue, précisez-le.

Testez :

Code : Tout sélectionner

Mot français :
Mot anglais :
Mot dans l’autre alphabet :

et indiquez :

  • []le moteur utilisé ;
    []la base de données ;
    []l’encodage ;
    []la version phpBB ;

  • la version PHP.

Ne concluez pas automatiquement que « phpBB ne supporte pas la langue ».

Le problème peut être lié au moteur, à sa configuration ou à l’index.

38. Les caractères spéciaux peuvent influencer la recherche

Les termes techniques sont parfois compliqués à rechercher :

Code : Tout sélectionner

C++
C#
.NET
AI-2
T-20

Le moteur doit découper le texte en mots.

Certains caractères peuvent être interprétés comme :

  • []séparateurs ;
    []opérateurs ;

  • ponctuation.

Si un terme technique pose problème alors que les mots ordinaires fonctionnent correctement, le problème ne vient probablement pas de l’ensemble de l’index.

39. Recherche lente et recherche cassée sont deux problèmes différents

Une recherche peut :

Code : Tout sélectionner

fonctionner mais prendre 15 secondes

ou :

Code : Tout sélectionner

répondre immédiatement avec zéro résultat

Ce ne sont pas les mêmes symptômes.

Une recherche lente peut nécessiter d’examiner :

  • []la taille du forum ;
    []le moteur utilisé ;
    []la base ;
    []la charge serveur ;

  • les ressources disponibles.

Une recherche instantanée mais incomplète oriente davantage vers :

  • []l’index ;
    []les réglages ;
    []les permissions ;
    []les mots ignorés.

40. Ne changez pas de moteur uniquement parce qu’une recherche échoue

Mauvaise méthode :

Code : Tout sélectionner

Recherche ne trouve pas un mot
↓
Passage Fulltext native → MySQL
↓
Toujours mauvais
↓
Passage MySQL → autre moteur
↓
Reconstruction
↓
Modification de cinq réglages

Vous ne savez plus ce qui a changé.

Bonne méthode :

Code : Tout sélectionner

Identifier le symptôme
↓
Noter le moteur actuel
↓
Vérifier l’index
↓
Vérifier les paramètres
↓
Tester
↓
Corriger un élément à la fois

41. Diagnostic : anciens messages introuvables après migration

Exemple :

Code : Tout sélectionner

Forum avant migration :
800 000 messages

Après migration :
800 000 messages visibles

Recherche :
messages récents trouvés
anciens messages introuvables

Priorité :

  1. []vérifier le moteur actif ;
    []ouvrir l’index de recherche ;
    []vérifier qu’un index complet existe ;
    []reconstruire proprement si nécessaire ;

  2. tester plusieurs anciens messages.

Ne réimportez pas immédiatement toute la base.

Les messages sont déjà là.

42. Diagnostic : tous les mots sont déclarés trop communs

Exemple :

Code : Tout sélectionner

Recherche : portugal
Résultat :
mot ignoré car trop commun

Vérifiez :

  • []le moteur utilisé ;
    []le seuil des mots communs ;
    []la longueur minimale et maximale ;
    []si le réglage a été modifié depuis la dernière construction de l’index.

Si vous changez les règles déterminant quels mots sont indexés, reconstruisez ensuite l’index lorsque cela est nécessaire.

43. Diagnostic : recherche bloquée pour charge serveur

Exemple :

Code : Tout sélectionner

Forum : rapide
Publication : rapide
PCA : rapide
Recherche :
indisponible pour charge système

Avant de reconstruire l’index, vérifiez :

Limite de charge système pour la recherche

Si la valeur configurée est inadaptée à votre nouvel environnement, elle peut être la cause directe.

Une valeur :

désactive cette limitation dans phpBB.

44. Diagnostic : seuls les nouveaux messages sont absents

Exemple :

Code : Tout sélectionner

Ancien index : fonctionne
Nouveaux messages : jamais trouvés

Vérifiez notamment :

  • []la mise à jour Fulltext ;
    []le moteur actif ;
    []les erreurs lors de la publication ;
    []les extensions intervenant dans la recherche ou la publication.

Une reconstruction complète peut remettre l’index à jour ponctuellement, mais si la mise à jour automatique reste désactivée, le problème reviendra immédiatement avec les prochains messages.

45. Diagnostic : un membre ne trouve pas un sujet que l’administrateur trouve

Avant de reconstruire quoi que ce soit :

  • []ouvrez le sujet avec le compte du membre ;
    []vérifiez s’il peut réellement lire le forum ;
    []vérifiez ses permissions de recherche ;
    []comparez ses groupes.

Si le membre ne peut pas accéder au contenu directement, il est normal que la recherche ne lui révèle pas son existence.

46. Informations à fournir lorsque vous demandez de l’aide

Indiquez :

Code : Tout sélectionner

Version phpBB :
Version PHP :
MariaDB / MySQL / autre :
Version de la base :
Type d’hébergement :

Puis :

Code : Tout sélectionner

Moteur de recherche actif :
Index présent : oui/non
Dernière reconstruction connue :
Nombre approximatif de messages :

Décrivez précisément le symptôme :

Code : Tout sélectionner

Recherche globale : fonctionne/ne fonctionne pas
Anciens messages : trouvés/introuvables
Nouveaux messages : trouvés/introuvables
Recherche par auteur : fonctionne/ne fonctionne pas
Message « mot trop commun » : oui/non
Message de charge serveur : oui/non

Ajoutez également :

Code : Tout sélectionner

Le problème est apparu après :
mise à jour / migration / conversion / changement d’hébergeur / changement MySQL-MariaDB / autre

Donnez enfin un exemple réel :

Code : Tout sélectionner

Mot recherché :
Sujet dans lequel il existe :
Date approximative du message :
Le message est visible directement : oui/non

Avec ces informations, le diagnostic devient beaucoup plus rapide.

47. Ce qu’il ne faut pas faire

Évitez notamment :

  • []supprimer manuellement les tables de recherche ;
    []modifier

    Code : Tout sélectionner

    phpbb_search_wordlist

    directement ;
    []modifier

    Code : Tout sélectionner

    phpbb_search_wordmatch

    directement ;
    []changer de moteur cinq fois en une heure ;
    []reconstruire plusieurs index simultanément ;
    []réimporter toute la base simplement parce qu’un ancien mot est introuvable ;
    []modifier les permissions alors que tous les utilisateurs rencontrent le même problème ;
    []augmenter toutes les limites sans comprendre leur effet ;

  • conclure qu’un index est cassé uniquement parce qu’un mot très commun est ignoré.

48. Checklist de diagnostic

  • []La recherche est activée dans phpBB.
    []J’ai identifié le moteur réellement utilisé.
    []Je sais quel index correspond à ce moteur.
    []J’ai testé un message récent.
    []J’ai testé un ancien message.
    []J’ai testé un mot rare.
    []J’ai testé un mot fréquent.
    []J’ai vérifié la longueur minimale des mots.
    []J’ai vérifié la longueur maximale des mots.
    []J’ai vérifié le seuil des mots communs.
    []J’ai vérifié la mise à jour Fulltext.
    []J’ai vérifié la limite de charge de la recherche.
    []J’ai comparé administrateur et utilisateur normal.
    []J’ai vérifié les permissions du forum concerné.
    []J’ai noté si le problème est apparu après une migration.
    []J’ai noté si le problème est apparu après un changement MySQL/MariaDB.
    []Je n’ai modifié aucune table d’index manuellement.
    []Je n’ai pas lancé plusieurs reconstructions en même temps.
    []J’ai sauvegardé la base avant une opération importante.
    []J’ai testé plusieurs termes après reconstruction.

À retenir

Quand la recherche phpBB ne trouve plus un message, cela ne signifie pas nécessairement que ce message a disparu.

Le problème peut être situé dans :

Code : Tout sélectionner

Recherche désactivée
↓
Mauvais moteur sélectionné
↓
Index absent
↓
Index incomplet
↓
Index non mis à jour
↓
Mot trop court
↓
Mot trop long
↓
Mot considéré comme trop commun
↓
Limite de charge système
↓
Permissions

Retenez surtout :

un message peut parfaitement être visible dans un sujet tout en étant absent de l’index de recherche ;

après une migration ou une conversion, la reconstruction de l’index peut être indispensable ;

le moteur actif et l’index créé doivent correspondre ;

modifier les règles des mots communs ou des longueurs de mots peut nécessiter une nouvelle indexation de l’ancien contenu ;

une recherche refusée pour charge système n’est pas forcément un problème d’index ;

et un résultat différent entre administrateur et membre peut simplement provenir des permissions.

La bonne méthode consiste toujours à commencer par un test très simple :

Code : Tout sélectionner

Choisir un message connu
↓
Choisir un mot rare contenu dans ce message
↓
Vérifier que le message existe
↓
Tester la recherche
↓
Comparer ancien et récent
↓
Identifier le moteur
↓
Vérifier l’index

Une fois ces éléments connus, la recherche phpBB cesse d’être une boîte noire.

Vous pouvez déterminer si le problème vient réellement de l’index, des réglages, du moteur de recherche, des permissions ou de l’environnement serveur, puis corriger la véritable cause sans toucher inutilement aux messages de votre communauté.