使用索引服務器的對象
你可以象使用其它數據庫一樣使用索引服務器,也就是Index Server,它是IIS4中包含的內容索引引擎。你可以對它進行ADO調用并搜索你的站點,它為你提供了一個很好的web 搜索引擎。
它非常容易使用。你只需要聲明對象,然后對引擎進行調用,然后引用你所請求的屬性、欄和值。
那么,怎樣做以上這些工作呢?
設置提示用戶進行輸入的表單頁面,這個頁面將被傳遞到索引服務器引擎。設置查詢引擎的頁面并顯示結果測試。
下面來看看swynk.com 在左欄搜索工具中使用的代碼。
創建表單
這個表單非常簡單。這是你的基本HTML表單,增加了一些隱含域,這些域將幫助驅動某些搜索引擎特性。
<form method="get" action="/sitesearch/sitesearch.asp" id=form1 name=form1> <!-- search text --> <table width="100%"> <tr width="100%" bgcolor="Black"> <td width="100%"> <font color="White"> <b>Search</b> </font> </td> </tr> </table> <input type="text" name="qu" size="20"><br>
<!-- max hits --> <input type="hidden" name="mh" value=50> <!-- sort by hits --> <input type="hidden" name="sd" value="Hitcount"> <!-- allow enumeration --> <input type="hidden" name="ae" value="1"> <!-- catalog --> <input type="hidden" name="ct" value="c:\inetpub\www07120\index\"> <input type="submit" value="Find It!" name="Search"> <a href="/sitesearch/searchhelp.asp"><font size=- 1>Help</a></font> </form>
如果你將設置的表單與你在這個頁面左邊看到的搜索相比較,你就能發現域是從那里引入的,“找到了”按鈕在哪里 顯示。以下是域的簡要解釋:
◆ mh是你想要返回的點擊數的最大值。例如,你可能愿意將這個值設為200。將這個值設置得太高會給服務器帶來不必要 的負擔。如果這個值太低就不能返回足夠多的有意義的結果。要確定你的站點的最佳值需要花費一些腦筋(這種情況聽起 來有點象SQL中的"Set rowcount=", 不是嗎)。
◆ sd是你想用做分類值的欄的名。在這種情況下,我們是在調出點擊值欄--首先我們顯示在搜索中點擊最多的頁面,然后 按照降序排列結果設置(D代表降序)--同SQL中的"Order By..."一樣,就是打開結果設置的列舉。
◆ ct指向在哪里找到了將要使用的目錄或索引數據庫。這里有一點技巧。當你為某一給定站點打開索引服務器時,你就要 指出索引數據庫在什么位置。你必須要將這個值指向這個位置,否則索引服務器就會返回一個結果NO。(這是FROM數據 庫)
隨后,當然是調用將要取走這些值并查詢服務器的ASP頁面。注意,這是在使用表單處理中的GET類型-稍后將對此多做介紹,但是,只要你在使用我們的樣本頁面,就必須要用到它。 作者/出處:青蘋果工作室
|