En configurant w4os sur un nouveau site, nous avons eu du mal à trouver pourquoi la recherche ne fonctionnait pas avec le moteur de recherche interne. Pourtant, elle fonctionnait parfaitement en utilisant un moteur externe utilisant exactement les mêmes versions des librairies. Et elle fonctionne parfaitement en interne sur plusieurs grilles publiques que je gère, ainsi que les grilles de test créées pour le développement de w4os.
C’est dans ces moments-là que l’on se dit « finalement, voiturier, c’est peut-être un meilleur métier pour moi, tout ce qu’il faut, c’est être poli ». Poli ? Bon sang, mais c’est bien sûr : le protocole !
Dans le fichier OpenSim.ini, pour utiliser w4os comme moteur de recherche, il faut spécifier son URL (terminant par query.php) en ajoutant le GatekeeperURI (la passerelle de la grille), avec à l’argument « gk », pour permettre une réponse formatée pour la grille qui fait la requête. C’est une information qui n’est pas envoyée par le viewer, il faut donc l’ajouter dans les réglages.
[Search]
Module = OpenSimSearch
SearchURL = "http://example.org/helpers/query.php?gk=http://yougrid.org:8002"
Dans la majorité des cas, le GatekeeperURI est identique au LoginURI. Mais, selon les standards d’OpenSimulator, il inclut ce qu’on appelle le protocole (http://). Et les réglages du plugin ne précisaient pas cela. Et le moteur de recherche n’acceptait pas de valeur sans protocole (yourgrid.org:8002).
Conclusion : il y a une nouvelle mise à jour de w4os, disponible dès maintenant sur magiiic.com ou sur GitHub, et sous peu dans le répertoire de plugins de WordPress.
Elle fixe le problème de deux manières :
- la page de réglage des helpers mentionne maintenant correctement la syntaxe des réglages à faire dans OpenSim.ini
- le moteur de recherche lui-même accepte à présent que le GatekeeperURI n’ait pas de protocole.
La correction a été portée également pour la librairie du moteur de recherche, incluse dans w4os, mais aussi disponible en tant que solution autonome, Flexible Helpers Scripts.