2013-10-24 38 views
0

我是我們公司的網站管理員,我們正在選擇一個新的網絡託管公司。這家老公司多年前向我們出售了一個託管軟件包,並從那時起就讓我們留下了當時的硬件:Pentium 3盒,1GB RAM,Windows 2000服務器。他們告訴我們,我們將不得不選擇一個新的託管軟件包,並花更多的錢購買更新的硬件。我只發現了這一點,因爲我們用來將我們的網站從dev複製到prod的微軟網站服務器現在給我們帶來了麻煩,因爲它使用了一個未簽名的java應用程序,而這個應用程序很快就不再受支持了。所有這些和公司每月支付300美元以上。哎喲。windows 2008服務器和經典的ASP目錄查詢

我遇到的問題是這樣的:在Windows 2000服務器計算機上有一個索引服務,用於生成用作網站搜索功能一部分的網站的目錄。我已經聯繫了幾家網絡託管公司,當我詢問索引服務時,我告訴他們他們不能提供給我相同的目錄。有些主機告訴我,如果我購買vps帳戶,而不是便宜的分享服務,我可以獲得服務。

我想知道的是,如果有不同的方式去開發我的網站的搜索功能。有沒有辦法創建一個不使用索引服務的搜索功能?

回答

0

我研究了開發搜索功能的幾種備選方法,但它們都不適用於與現在託管的網站集成的分割主機。我決定將重點放在VPS託管上,因爲我可以安裝索引服務,並具有頁面功能,就像現在在我的舊主機上運行我的網站的win 2k服務器計算機上一樣。爲了測試索引服務的功能,我在我的win 7 PC上安裝了該服務。在我的Windows 7開發機器上安裝索引服務後,我學到了兩件事:

  1. 搜索頁面只能在64位環境中運行。這意味着我必須將搜索頁面移至新文件夾並使用64位應用程序池來運行該頁面。

  2. 在64位模式下,代碼行「Set rstResults = objQuery.CreateRecordset(」nonsequential「)」返回一個錯誤,「沒有這樣的接口支持」。谷歌搜索這返回的事實,即Windows更新打破功能,並提供修補程序來解決這個錯誤。該修補程序,#2740317,位於:http://support.microsoft.com/kb/2740317

現在我的搜索功能的作品和我得到的結果。唯一的問題是,結果指向file:/// c:/ Inetpub/...而不是website/path/page.html我必須從記錄集中提取路徑字段並使用替換函數來刪除物理路徑直至包含我的網站的文件夾。我現在得到一個指向網站上正確文件的相對鏈接。

1

如果您的網站內容來自數據庫,那麼可以在ASP和SQL中開發自己的搜索工具。

如果您的內容是靜態頁面,則可以使用外部網站服務來索引和搜索這些內容,這與您現在正在使用的內容類似,但外部服務類似。谷歌搜索「搜索你的網站」會帶來很多與你現在使用的功能類似的產品。

另一個類似的選項是你可以創建一個Google Custom Search(付費和免費選項可用),它將索引你的網站,很容易添加一個表單到你的頁面來添加這個搜索功能。

+0

這是問題...該網站的95%是靜態HTML。另外5%是動態的,來自通過ASP提供的訪問數據庫。 如果我得到一個vps託管帳戶,我知道在win 2008和12服務器上可以安裝索引服務來爲我的搜索生成目錄。 我在尋找的是一種解決方案,我可以在共享託管解決方案中使用,以便能夠替換索引服務並生成我自己的目錄。我注意到你提到的軟件,但由於我專注於共享主機,所以我無法運行這些軟件。 – RCDAWebmaster

+0

我可能打算使用VPS託管解決方案,這意味着我可以安裝索引服務並照顧我的需求。 – RCDAWebmaster

+0

我提到的服務(包括谷歌自定義搜索)是外部服務,所以它不會影響您的網站託管。例如,要使用Google自定義搜索,您需要在網站上添加一個搜索表單,該表單會提交到您的網站上的某個頁面,該頁面上會顯示一些Google JavaScript以顯示搜索結果。所有搜索都在Google的服務器上完成,您的網站只顯示結果。 – johna

0

我想你是指從Windows Server 2003發佈以來實際上是內置組件的Microsoft索引服務。它被稱爲Microsoft Windows搜索服務,它默認安裝在某些版本的Windows Server上,是其他人的可選組件(可選,就像IIS在安裝時被認爲是Windows Server的可選組件一樣)。在Windows Server 2003之前,它是作爲Windows Search Server在microsoft.com上單獨下載的。安裝完成後,根據服務器上文檔的大小和數量,建立初始搜索索引可能需要幾個小時。索引完成構建之前,搜索功能不會返回所有或任何預期的結果。

我提到所有這些,因爲我實際上已經發現,這是默認安裝在我們過去沒有問過的主機上。所以我假設您可能已經詢問過的主機可能沒有意識到您指的是Windows Server的內置組件,您可能需要使用您的首選主機進行說明。

+0

我確實與首選主機一起澄清了這一點,並且幾個人告訴我,由於它利用了很多CPU週期,因此它並未作爲其分支主機解決方案的一部分提供。他們告訴我,如果我使用VPS託管解決方案,它將可用。我試圖找到的是一個可供選擇的選擇,這對於我來說在一個分散的託管環境中是可行的。我明白,在VPS託管解決方案中,我可以完全控制並可以安裝該服務。 – RCDAWebmaster

+0

需要注意的是,由於win服務器現在是64位,我必須啓用對32位應用程序的支持才能使Classic ASP運行。然後我在某個地方看到在32位環境下查詢目錄不起作用。我試圖在我的win 7 PC上安裝服務並在我的本地PC上進行測試,並得到一個錯誤,「Microsoft VBScript運行時錯誤'800a01ad'ActiveX組件無法創建對象'」

拋出錯誤的代碼行是設置objQuery = Server.CreateObject(「IXSSO.Query」)

RCDAWebmaster

+0

如果關閉對32位應用程序的支持,我會通過該錯誤並收到一條消息,「沒有這樣的接口支持」拋出錯誤的代碼是Set rstResults = objQuery.CreateRecordset(「nonsequential」)如何在64位環境中實現這一功能,並在較早的win 3k服務器32位環境中創建搜索頁功能? – RCDAWebmaster