Een zoekmachine-script voor je site installeren
In een eerder artikel heb ik je al eens uitgelegd hoe je met behulp van de Sitesearch dienst van Google een zoekfunctie voor je site kunt maken.
In dit artikel wil ik een zoekscript gaan installeren en dit script gebruiken voor het doorzoeken van alle informatie op de site. Ik moet zeggen dat ik eerst niet zo veel zag in zo'n script, omdat de scripts die ik in actie gezien heb op andere sites vaak hele matige zoekresultaten produceerden. Onlangs heb ik echter een script gezien waar ik wel van onder de indruk was en waar veel anderen ook positief over waren. Dat script is de Fluid Dynamics Search Engine (FDSE). Het is een gratis Perl script. We gaan deze zoekmachine nu stap voor stap installeren.
Als je eerst een idee wilt krijgen van hoe deze zoekmachine eruit kan komen te zien en hoe hij werkt dan kan je hier een werkende demo van het script zien.
Wat heb je nodig?
Het belangrijkste is dat je op je server Perl CGI scripts mag draaien! Als je niet zeker weet of je webhost CGI ondersteunt dan moet je dit even nakijken op de site van de host, of desnoods even navragen.
Als Perl inderdaad geïnstalleerd is op de server dan moet je ook nog even nakijken/navragen wat het pad naar Perl is. Meestal is dat pad /usr/bin/perl, maar bij sommige hosts kan dat bijvoorbeeld ook /usr/local/bin/perl of /usr/bin/perl5 zijn. Schrijf even op wat dit pad bij jou is, dit hebben we dadelijk nodig.
Verder zijn er nog wat andere vereisten voor de Perl versie die gebruikt wordt, maar ik ga ervan uit dat deze standaard aanwezig zijn bij de Perl versie van je host.
Installatie
Je kunt FDSE op twee manieren installeren. De eerste manier is handmatig, de tweede manier automatisch. Wij gaan FDSE hier handmatig installeren, vooral vanwege veiligheidsredenen. Als je het automatisch wilt laten doen dan kan dat door voor Automated install te kiezen op de FDSE site.
1. FDSE-script downloaden: eerst moet je het script downloaden vanaf de FDSE-site. Als je alleen Engels wilt gebruiken als taal voor de zoekmachine dan kan je voor het kleinste bestand kiezen, wil je (ook) Nederlands gebruiken kies dan voor het grotere bestand (all languages).
Als je het bestand gedownload hebt dan kun je hem uitpakken op de harde schijf van je computer. De bestanden komen automatisch in de juiste (sub)mappen te staan. Deze mappenstructuur zal hetzelfde blijven als we straks de bestanden naar de server gaan uploaden.
2. Scripts aanpassen: het pad naar perl.
De volgende scripts zul je misschien moeten bewerken:
- search/search.pl
- search/proxy.pl
- search/searchmods/powerusr/cmd_admin.pl
- search/searchmods/powerusr/hacksubs.pl
- search/searchmods/powerusr/lang.pl
Het normale pad naar perl, /usr/bin/perl, wordt standaard al gebruikt in het script. Dus als jouw host ook dit pad gebruikt dan hoef je deze bestanden verder niet aan te passen. Gebruikt je host een ander pad, dan moet je de eerste regel van bovenstaande scripts aanpassen naar dat pad, dus bijvoorbeeld naar /usr/local/bin/perl. Dat aanpassen doe je gewoon in een standaard teksteditor of HTML editor.
Verder kan het zijn dat je de extensies van bovenstaande bestanden moet aanpassen. Bij verreweg de meeste hosts zul je gewoon .pl bestanden kunnen gebruiken, maar bij sommigen moet je .cgi of nog iets anders gebruiken. Kijk ook dit even na bij je host en hernoem de bestanden indien nodig.
Dan raad ik je nog aan om het bestand search/searchdata/templates/dutch/searchform.html even aan te passen. De terminologie die daar gebruikt wordt vind ik niet erg duidelijk. Ik heb daar dezelfde termen gebruikt als de geavanceerd zoeken pagina van Google. Vervang hiervoor "Toon" door "Zoek resultaten", "Alle" door "met alle", en "willekeurige" door "met een van deze".
3. Bestanden uploaden: nu wordt het tijd om alle bestanden naar de server te uploaden. Als je van je host CGI scripts in een speciale directory moet zetten als "cgi-bin" of "cgi", plaats dan alle bestanden en directories in die directory.
4. Set permissions (CHMOD'en): als de bestanden eenmaal op de server staan dan moet je de permissions van deze bestanden nog vastleggen (wordt ook wel CHMOD'en genoemd). Dit zorgt er onder meer voor dat bestanden waarin geschreven moet worden door een script ook beschrijfbaar zijn en dat bestanden die bezoekers niet mogen zien ook echt verborgen blijven.
Er zijn nogal wat bestanden die je moet CHMOD'en. De lijst van bestanden en directories staat op deze pagina onder Appendix II.
Het CHMOD'en zelf gaat bij ieder FTP programma weer iets anders. Meestal moet je het bestand of de directory selecteren en dan op de rechtermuisknop klikken. Dan krijg je een optie als Change file attributes of CHMOD of iets dergelijks. Klik daarop en dan kun je het getal intypen dat in de eerste kolom van de hierboven genoemde lijst van bestanden staat.
Bijvoorbeeld: de Search-directory moet je selecteren in je FTP programma en vervolgens op de rechtermuisknop klikken en voor het juiste commando kiezen om te CHMOD'en. Vervolgens tik je 755 in het invulveld dat verschijnt. Dit doe je verder voor alle bestanden uit de lijst, met uitzondering van de taalbestanden die je niet nodig hebt (zie hieronder).
Let op: je hoeft niet alle bestanden een voor een te CHMOD'en! Je kunt meerder bestanden selecteren door de control toets ingedrukt te houden en andere bestanden aan te klikken. Dat scheelt een hoop gedoe.
5. Onnodige taalbestanden deleten: de FDSE zoekmachine is in vele talen vertaald. Deze staan standaard nu ook allemaal op je server en staan ook in de lijst met te CHMOD'en bestanden. Dat is normaal gesproken natuurlijk niet nodig. Ik ga ervan uit dat je alleen de Nederlandse en Engelse taal nodig hebt. Je hoeft hiervoor uit de templates directory alleen de bestanden in de directories dutch en english te CHMOD'en. Alle andere subdirectories in de templates directory zou ik deleten om zo ruimte op de server te besparen.
Ook de andere .txt taalbestanden in de directory search/searchmods/powerusr/ kan je om dezelfde reden weggooien (dutch.txt en english.txt dus laten staan!). Let wel op dat je function_spec.txt en global_no_translate.txt niet per ongeluk delete, dit zijn geen taalbestanden.
De handmatige installatie is hiermee voltooid. Nu kan je de zoekmachine gaan configureren.
FDSE zoekmachine configureren
1. Wachtwoord instellen: bezoek allereerst de pagina http://www.jewebadres.nl/search/search.pl?Mode=Admin (vervang "jewebadres.nl" door je eigen domeinnaam). Als het goed is moet je hier nu eerst een wachtwoord opgeven. Doe dat even en schrijf hem op.
Als je ingelogd bent dan kom je op de Admin-pagina. Hier kun je de FDSE zoekmachine volledig configureren.
2. Taal instellen: standaard zul je alles in de Engelse taal zien. Dit kun je eenvoudig veranderen naar Nederlands door links in het menu op User Interface te klikken en op die pagina bij "language" voor "Nederlands" te kiezen en dan op de "Save data" knop te klikken. Ik ga voor de rest van dit artikel even van de standaard geselecteerde Engelse taal uit. Laat de taal dus voorlopig maar op Engels staan en pas aan het eind van dit verhaal de taal even aan als je Nederlands wilt gaan gebruiken.
3. Pagina's laten indexeren: nu moet je de informatie op je site laten indexeren door de FDSE zoekmachine, zodat bezoekers deze informatie straks op je site kunnen doorzoeken. Ga hiervoor eerst weer naar de Admin-pagina (de link bovenaan het linkermenu). Op de pagina zie je nu een kopje staan met "Add new site". Vul daar de URL van je site in, dus bijvoorbeeld http://www.jesitenaam.nl/. Klik daarna op de knop daaronder en je site zal geïndexeerd worden. Let op: dit kan wel een tijdje duren afhankelijk van de omvang van je site. Je moet je browser open houden tijdens dit proces. Als het indexeren klaar is zul je de mededeling "Success: finished crawling site" te zien krijgen.
4. Uiterlijk zoekpagina's aanpassen: je kunt het uitelijk van de zoekresultaten veranderen via de pagina User Interface in de sectie Advanced: Edit Templates. Klik bijvoorbeeld maar eens op de Main Header link. Hier zie je nu de HTML-code van de zoekresultatenpagina verschijnen. Deze HTML code kan je aanpassen aan de codes van de rest van je site, zodat de zoekpagina hetzelfde uiterlijk heeft als je andere pagina's. De Main Footer wordt gebruikt voor het slot van de HTML-code (dus </body> en </html> etcetera).
5. Zoekformulieren toevoegen aan je site: nu je site geïndexeerd is door de zoekmachine kan je bezoekers je site laten doorzoeken op informatie. Hiervoor moet je een zoekformulier toevoegen aan de HTML-code van je pagina's. Ga hiervoor weer naar de User Interface pagina. Daar heb je twee HTML codes die je kunt gebruiken. Een voor een simpel zoekformulier en een voor geavanceerd zoeken. Kopieer de gewenste code en voeg hem toe aan je pagina's op de plek waar je het formulier wilt hebben.
6. License mode kiezen: tot slot moet je nog even een License mode kiezen. Dat doe je via de "License mode" link in het menu. Standaard staat dit op "Trial Shareware", maar waarschijnlijk zul je dit op "Freeware" willen zetten. Voor een enkele website is deze basisfunctionaliteit eigenlijk ook wel voldoende.
Onderhoud
Wat tenslotte nog belangrijk is is dat je van tijd tot tijd de zoekindex van FDSE laat herbouwen. Als je nieuwe dingen hebt toegevoegd aan je site dan doe je er verstandig aan om even in te loggen en op de Admin-pagina op de Rebuild-link te klikken, zodat de site weer geïndexeerd kan worden met de nieuwe informatie. Zo zorg je ervoor dat bezoekers ook de meest recente informatie terug kunnen vinden als ze van je zoekfunctie gebruik maken.
Ook is het een goed idee om na verloop van tijd de Usage Logs te deleten. Als veel mensen gebruik maken van de zoekfunctie zullen de logs vrij groot worden. Ga hiervoor naar de pagina Usage Statistics. Daar kan je de bestanden verwijderen.
Tot slot
Als het allemaal goed gegaan is, heb je nu een goed functionerende zoekmachine op je site staan. De Fluid Dynamics Search Engine is een prima zoekscript dat je bezoekers zal helpen om sneller de gewenste informatie op je site te vinden. Zeker voor grote sites is een goede zoekmachine eigenlijk onmisbaar.
Ik hoop dat je wat aan het artikel gehad hebt en dat je je site er weer iets mee kunt verbeteren.
Lees ook:
Wat vond je van dit artikel?
Homepage-Maken Tip
De makkelijkste manier om je eigen website te maken?
Dat is via een website bouwer als Weebly. Hiermee kun je eenvoudig via je browser door middel van drag-en-drop een website bouwen. Je kunt volledig gratis beginnen met 500MB webruimte voor je site. Zo nodig kun je een betaald pakket nemen met eigen domeinnaam, "onbeperkte" opslag (fair use policy) en e-commerce mogelijkheden.
Weebly is daarom een prima optie als je snel een website in elkaar wilt zetten. Kennis van HTML of het installeren van een eigen content management systeem is niet nodig bij Weebly.