Delprosjekt:
Søking

Ansvarlig:
Ole Haakon Neskvern (ole.h.neskvern@hiof.no)
Innledning:
Søkemekanismen som eksisterte på Al Mashriq når vi tok over prosjektet var basert på indekseringssystemet Glimpseindeks v. 3.0. For å koble dette sammmen med et web-basert grensesnitt hadde man utviklet et eget script for konvertering mellom søkeresultater fra Glimpse til HTML. Det var enkelte problemer med dette scriptet; resultatene var ofte feil i forhold til søkeordene. I tillegg feilet indekseringsmekanismen med ujevne mellomrom, noe som gjorde at søkemekanismen var nede i perioder. Behovet for sikrere indeksering og bedre søkeresultater meldte seg.
Hva har vi gjort:
For å slippe problemene relatert med det gamle søkesystemet valgte vi å fjerne "gatewayen" mellom Glimpse og HTML (glimpse-html.pl). I tillegg oppgraderte vi Glimpse & Glimpseindeks til versjon 4.0. Denne versjonen støtter bl.a indeksering av tittel-feltet i HTML-sider.

Problemene med indekseringen viste seg å ligge i at rettighetene til enkelte indeks-filer endret seg når Glimpseindeks ble kjørt. Dette løste vi ved å la indekseringsjobben være et script (~/admin/search/glimpse.helper) som utføres av cron. Scriptet utfører chmod 755 på allle indeksfilene etter at indekseringen er utført.

Grensesnittet til web endret vi til å basere seg på GlimpseHTTP. GlimpseHTTP er et perl-script som tar output fra kommandoen glimpse (søkeverktøyet) og setter inn passende HTML-kode for formatering av output. Vi utvidet GlimpseHTTP til å legge inn header og footer etter Al Mashriq-standard.

I tillegg har vi ekskludert større deler av html-hierarkiet for å unngå for mye "søppel" i søkeresultatene. Denne ekskluderingen gjøres i .glimpse_exclude, hvor man legger inn stier og filnavn på filer som ønskes å fjerne fra indekseringen. Ekskluderingen foregår vha. regulærutrykk. Vi har også satt regler (se delprosjekt for kvalitetssikring) for navngivning av temporære filer. Disse temporære filene blir automatisk ekskludert av indekseringsmekanismen.

Erfaringer:
I begynnelsen når vi skulle forsøke å installere de nye Glimpse-versjonene på HP-UX-maskinene her på huset fikk vi store problemer med kompilering/installering (se delprosjekt for egen maskin). Etter at vi gikk over til en PC/Linux-løsning løste problemet seg.
Mulige forbedringer:
En søkemekansime med mest mulig intelligens vil alltid være ønskelig. Vi har valgt å implementere en solid og forholdsvis enkel søkemekanisme, med oversiktlige resultater fra søk. En utvidelse kan være å sortere utskrift før den sendes ut som HTML etter følgende regler:
  • Hvis søkeordet finnes i URL'en til filen skal denne komme først.
  • Søkeordene i URL'en sorteres fra venstre til høyre, der søkeord til venstre kommer først.
Prosjektfakta
Lokalisering:
  • Glimpse (med tilhørende Glimpseindeks) ligger i /usr/local/bin
  • Grensesnittet mellom Glimpse og HTML ligger i /www/almashriq/cgi-bin/search.pl
  • Indeks og konfigurasjonsfiler for glimpse ligger i /www/almashriq/htdocs/.glimpse.*
Tidsestimering:
  • Totalt 124 timer, medregnet konfigurering og installering på diverse HP-UX-maskiner.
Ressurspersoner:
  • Kjetil Eik (WWW-prosjektet)
  • Helge Larsen (TheBand-prosjektet)
Programvare