Ah ! Une description... Ben en fait je me disais que j'allais faire un blog depuis longtemps, sauf que c'était juste pour y stocker des trucs pour moi, des espèces de post-it virtuels. Bon tant qu'à faire autant qu'il te profite à toi aussi.
Pour installer IIS, référez-vous aux explications du site http://raphaello.univ-fcomte.fr/w2k/07-InternetInformationServer/IIS.htm.
Un serveur web local sera installé et utilisable sur la machine. Il sera accessible à l'adresse http://localhost/.
http://www.htdig.org/files/binaries/htdig-316-win2k.zip
Le zip contient non seulement tous les fichiers utiles mais a également été amélioré pour nous rendre la vie plus facile. Les contributeurs sont cités dans le fichier ReadMe.txt à la racine du zip.
En suivant le fichier ReadMe, on y arrive presque. Il faudra faire quelques ajustements mais ça reste minime comparé à la version avec compilation. Commençons donc par décompresser le contenu du zip dans le dossier c:\htdig. On obtient une arborescence qui devrait ressembler à ça :
• Bin
• Common
• Conf
• Contrib
• Db
• Inetpub
• ReadMe.txt
Le dossier bin contiendra les binaires et autres fichiers batch qu'il nous faudra lancer pour indexer le site. C'est là également que seront les logs (nous y reviendrons plus tard).
Le dossier « common » est le « common dir » d'htdig. C'est là que seront les fichiers de templates, mots réservés, ...
Le dossier conf contiendra le fichier de config que nous éditerons bientôt.
Contrib ne nous sera pas utile, il contient des contributions. Référez vous au ReadMe pour en savoir plus.
Le dossier db contiendra la future base de données de notre moteur de recherche.
Le dossier Inetpub contiendra les éléments qui entrerons en interaction avec nos visiteurs : une page pour lancer la recherche et le cgi qui affichera les résultats.
Lorsqu'un visiteur effectuera une recherche, htdig fera appel à un gci qui cherchera les termes demandés dans la base de données. Il nous faut donc créer un dossier cgi accessible à notre site web. Pour cela nous allons à nouveau nous référencer au site http://raphaello.univ-fcomte.fr/w2k/07-InternetInformationServer/IIS.htm#virtuelWEB. Nous considèrerons que le dossier est nommé « cgi-bin ». N'oublions pas de lui donner des droits d'exécution.
Il faut à présent copier le contenu du dossier « Inetpub\wwwroot\cgi-bin » dans notre nouveau dossier « cgi-bin ».
Copions à présent le contenu du dossier « Inetpub\wwwroot\htdig » quelque part dans le dossier de notre site. Pour l'exemple, nous dirons que nous l'avons copié dans un dossier « htdig ».
Le visiteur peut maintenant se rendre à l'adresse http://localhost/htdig/search.html et voir le formulaire de recherche.
A noter qu'il peut être nécessaire d'éditer le fichier « search.html » et de modifier le paramètre « action » de la balise form et de remplacer « htsearch » par « htsearch.exe ».
Cygwin est un utilitaire qui permet d'exécuter des commandes unix sous windows. Si vous jetez un œil au dossier bin d'htdig, vous verrez d'ailleurs que certaines dll de cygwin sont déjà incluses. Rendons nous donc sur http://www.cygwin.com/ ou nous pourrons télécharger le fichier « setup.exe » lancera l'installation.
Celle-ci, n'étant pas compliqué nous ne la détaillerons pas ici. La seule chose à laquelle nous devons faire attention est de bien sélectionner l'option « install » de la section « Shells » dans la liste des modules. Il faut également faire attention de bien installer cygwin dans le dossier « c:\cygwin » (ou une autre lettre si htdig est sur une autre lettre mais il faut qu'htdig et cygwin soient à la racine du même lecteur).
Une fois cygwin installé, nous allons mettre à jour nos dll pour plus de sécurité. Copions donc « cygwin1.dll » et « cygz.dll » de « c:\cygwin\bin » vers « c:\htdig\bin ».
Nous pouvons à présent reprendre les instructions d'installation là ou nous les avons laissées.
Notre installation est maintenant complète et prête à indexer notre site. Il nous reste une chose à faire : configurer le crawler pour qu'il indexe correctement nos pages.
La FAQ d'htdig (http://www.htdig.org/FAQ.html) nous permettra d'obtenir les informations utiles pour optimiser la configuration. Notons simplement que les informations importantes sont :
1. start_url : url de départ du crawler
2. limit_urls_to : permet d'empêcher le moteur de partir à l'aventure là ou il ne devrais pas
3. exclude_urls : pour exclure certaines parties du site
4. maintainer : votre adresse email
Pour lancer htdig, nous disposons d'un fichier batch pré-écrit et distribué dans notre zip de départ. Lançons simplement le fichier « htdig.bat » qui se trouve dans le dossier « bin » d'htdig. Les options par défaut peuvent être gardée mais il est toujours possible de l'éditer pour les modifier.
En plus de lancer l'indexation à notre place, ce fichier redirige la sortie vers des fichiers logs qui se trouvent dans le dossier bin. Il est possible de désactiver la redirection vers les fichiers pour suivre le passage du crawler à l'écran.
Grâce à notre installation de cygwin, il nous est possible de suivre en direct l'évolution du crawler sans perdre l'enregistrement des logs dans un fichier. En effet, nous disposons maintenant des commandes unix. Lançons donc cygwin et rendons nous dans le lecteur c:\ Nous pouvons à présent lancer la commande « tail -f htdig/bin/htdig.log ». Le fichier sera alors lu et les dernières lignes affichées. Dès que le fichier sera modifié, notre affichage sera mis à jour.
Pour indexer les pdf, htdig a besoin de les convertir. Pour cela, il dispose d'un utilitaire dans le dossier bin : « pdf2html.bat » qui nous a été livré avec le zip original.
Il nous suffit donc de nous référer à la FAQ (http://www.htdig.org/FAQ.html#q4.9) pour voir qu'une modification de la configuration est nécessaire. Ajoutons la ligne suivante :
external_parsers: application/pdf->text/html /usr/local/bin/doc2html.bat
C'est tout. Htdig va maintenant parser et indexer les PDF de notre site.
Pour tester le bon fonctionnement de tout ceci, il suffit de se rendre sur la page l'adresse http://localhost/htdig/search.html et d'y tester l'indexation et la pertinence du moteur.
L'installation n'était pas aisée puisqu'il fallait savoir quoi installer mais n'est pas insurmontable, n'importe qui devrait en être capable.
Libre à vous évidement, de personnaliser votre installation en modifiant la page de recherche et/ou la configuration d'htdig. La FAQ et les sites permettant d'en apprendre plus sur le moeur de recherche sont suffisament nombreux pour ne pas avoir à aborder le sujet ici.