Geschrieben von: Christoph Wille
Kategorie: Server
This printed page brought to you by AlphaSierraPapa
Wenn eine Website aus mehrheitlich statischen Seiten besteht - so wie AspHeute - dann bietet es sich an, den mit IIS gelieferten Index Server zu verwenden, um die Site für Besucher suchbar zu machen.
Um die Suche zu ermöglichen, muß man einige Setuphürden nehmen, die leider nach wie vor schlecht dokumentiert sind. Standardmäßig indiziert der Index Server nämlich nur die Default Web Site - damit man in der IIS Hilfe suchen kann. Wenn man weitere Websites anlegt, werden diese nicht automatisch in den Indexkorpus (Catalog) aufgenommen - eine Suche mit den Standardsuchformularen verläuft erfolglos.
Zwar könnte man dem Standardcatalog die Verzeichnisse der eigenen Website hinzufügen, allerdings handelt man sich dadurch Scoping Probleme ein - wie suche ich nur über die Verzeichnisse meiner Website? Und außerdem werden virtuelle Verzeichnisse nicht automatisch mitaufgenommen - man müßte sie händisch eintragen. Daher ist es eleganter, sich pro Website einen eigenen Catalog zu generieren, und nur über diesen zu suchen.
Um einen neuen Index Server Catalog namens AspHeute zu erstellen, müssen Sie folgende Schritte durchführen:
Welche Inhalte indiziert dieser Catalog? Im Moment noch gar nichts - man muß ihm zuerst eine Website zuweisen.
Wie bereits erwähnt, muß man einem Catalog mitteilen, welche Inhalte er beeinhalten soll. Der erste Schritt für einen Website Catalog ist, die entsprechende Website als Indizierungsziel einzutragen:
Mit dieser einen Änderung hat man bereits einen funktionierenden Catalog, allerdings gibt es 2 Einstellungen, die man immer im Hinterkopf behalten sollte:
Diese finden sich im Generation Tab der Catalog Eigenschaften, und beeinflussen welche Dateitypen indiziert werden, und ob von der jeweiligen Datei eine Kurzzusammenfassung generiert werden soll. Möglicherweise sollte man hier auf Inherit Settings verzichten, besonders wenn man bei einem ISP hostet.
Ich habe es allzuoft erlebt, daß Administratoren die bisher beschriebenen Schritte richtig durchgeführt haben, dann allerdings an einer Kleinigkeit - einer einzelnen Websiteeigenschaft - fast gescheitert wären:
Der "Leger" ist die Eigenschaft Index this resource. Wenn diese abgewählt ist, dann werden Dokumente nicht indiziert, auch wenn ein Catalog existiert! Also diese Eigenschaft immer kontrollieren - und sie auch zum eigenen Vorteil einsetzen, um bestimmte Verzeichnisse oder Dateien vom Index explizit auszuschließen.
Man kann den Catalog direkt in der Computer Management Console verwenden, indem man den Zweig des Catalogs in der linken Baumansicht expandiert und Query the Catalog auswählt. Man erhält ein Abfrageformular, das völlig identisch zu den einfachen Beispielabfrageformularen funktioniert.
Für die Abfrage mit IDQ Dateien (mein persönlicher Favorit), ist die Änderung eigentlich sehr, sehr einfach: Man muß in die IDQ Datei nur die Zeile
CiCatalog=Catalogpfadeinfügen, und schon laufen die Abfragen nicht mehr über den Standardcatalog, sondern über den neu angelegten. Übrigens: Catalogpfad ist jener Pfad, den man beim Erstellen des Catalogs angegeben hat, nicht der Pfad zum Unterverzeichnis catalog.wci (dies ist ein beliebter Fehler!).
Auch in ASP-basierten Formularen ist nicht sehr viel umzustellen, man muß nur den Namen des Catalogs in die Catalog Eigenschaft speichern und dann die Anfrage ausführen:
Set Q = Server.CreateObject("ixsso.Query") Q.Query = strSearchString Q.Catalog = "AspHeute" Q.SortBy = "rank[d]" Q.Columns = "DocTitle, vpath, filename, size, write, characterization, rank" Q.MaxRecords = RankBase Set RS = Q.CreateRecordSet("nonsequential")
Weitere Artikel werden sich dann mit der Erstellung von interessanten Suchformularen widmen. Um aber sofort starten zu können und nicht das Rad neu erfinden zu müssen, kann man Beispiele zu IDQ und ASP Abfrageformularen im Verzeichnis drive:\WINNT\help\iisHelp\iis\misc finden.
This printed page brought to you by AlphaSierraPapa
Objektbasierte Index Server Suche
http:/www.aspheute.com/artikel/20010403.htm
PDF Dokumente suchbar machen
http:/www.aspheute.com/artikel/20010914.htm
©2000-2006 AspHeute.com
Alle Rechte vorbehalten. Der Inhalt dieser Seiten ist urheberrechtlich geschützt.
Eine Übernahme von Texten (auch nur auszugsweise) oder Graphiken bedarf unserer schriftlichen Zustimmung.