在Linux下建立強大的FTP搜尋引擎(轉)

amyz發表於2007-08-10
在Linux下建立強大的FTP搜尋引擎(轉)[@more@]

  Linux正大行其道,不少朋友相信已經用它架設過各種服務,什麼Web、FTP、BBS等等等啦,這次,我向大家介紹另外一個在linux下執行的伺服器軟體----NoseyParker,一個強大的FTP搜尋引擎,只要一些簡單的步驟,一個強大的搜尋引擎舉手間就建立起來了,各位且聽我慢慢道來。 

  parker是一個FTP伺服器搜尋引擎,是基於Linux的開放原始碼軟體。主要檢索各個FTP伺服器上面的檔案,然後將目錄資訊儲存在本地的檔案中,如果有查詢請求,將檢索本地的資料,將相關的資訊(檔案所在的地址)返回給請求者。教育網內很多FTP站點都採用這個作為搜尋引擎,比如清華九井等。

  使用方法很簡單,如果你是linux系統,應當不會有什麼問題。如果是別的unix-like系統,也可仿照作相應處理。

  本文以紅旗2.0桌面版為例說明整個的架構過程。因為相對來講筆者個人覺得紅旗Linux比較好操作,中文漢化也做得很好。他的Web Server(Apache)設定可以透過Xwindow介面來實現,比較方便初級使用者。

  首先你得獲取一份parker的原始碼,推薦到這個站點搜尋一下,你可以找到一打以上的提供原始碼的站點:,拿到原始碼之後,我們就可以開始安裝了。

  基本安裝方法如下(可以參考parker目錄下面的readme操作):

  1、當然,第一件事是開機進入你的linux,然後將你獲取到的parker原始碼檔案(一般為parker.2000-09-06.xxxx.tgz,其中包含了這個parker的修改日期和修改者)展開到一個目錄中, 這裡我們假設是/root/parker/。

  2、是用文字編輯器編輯/root/parker/src/Makefile這個檔案,主要是設定parker_home為你的parker所在的目錄(/root/parker/)

  3、在終端視窗輸入命令make config進行編譯

  在你的/root/parker/src/目錄下面,執行make config就可以了。make有些類似VC裡面的工程一樣,可以批次處理一些程式。所有的unix-like系統都有make這個程式,否則的話,就是你在安裝linux的時候沒有安裝開發環境的支援。(選擇定製安裝的朋友們就要注意了,我第一次裝紅旗的時候,選擇定製, 不小心這個make就沒裝上去)

  4、編輯/root/parker/src/parker.h,設定其中的SERVER、PARKERSERVER,具體方法就是把"10.129.6.172"替換成你的parker所在的伺服器地址。

  5、在終端視窗輸入命令make進行編譯

  6、編譯完後繼續鍵入make install進行編譯處理

  7、修改你的Parker_Hosts(/root/parker/etc/Parker_Hosts)檔案,加入需要檢索的FTP伺服器地址,一行一個FTP伺服器地址。

  8、將src/下面的cgi程式(cgi, cgistatus,cgiswitch,這些檔案只有當你上面的編譯完成後才能產生)複製到你的www伺服器的cgi-bin目錄下面。將/root/parker/html/下面的檔案 放到你的www伺服器的doc root下面,使得可以被使用者訪問。具體有關Web Server的設定請參考其他文獻,但相對來講,紅旗linux的Apache設定是比較簡單的。

  9、編輯你的/etc/services和/etc/inetd.conf檔案,加入parker服務。具體修改可以參考/root/parker/conf/目錄下面的例子。

  在例子中/usr/networking/parker/bin/parkerd這個目錄指的是parker所在的目錄,將其修改為/root/parker/bin/parkerd,當然,你必須首先完成make install,這樣在你的parker/bin/目錄下面 才會有parkerd這個檔案。

  10、重新啟動inetd以及www伺服器程式。

  11、定時執行/root/parker/bin/NewData這個指令碼檔案,可以把它放置到你的crontab中,讓系統定時執行(一般是1天到1個星期)。

  NewData指令碼將訪問在/root/parker/Parker_Hosts中定義的FTP伺服器,並將檢索到的資料存放到本地,然後對資料進行相應的處理。

  www使用者可以透過訪問parker頁面來執行檔案查詢請求。

  當你能夠成功的執行完make install之後,就會在你的/root/parker/bin/目錄下面看到這個NewData檔案,注意,不能直接在這個指令碼所在的目錄裡執行他,否則會出錯,不能收集資料,可以在根目錄下(root)執行parker/bin/NewData (注意大小寫)即可。

  至此,一個強大的搜尋引擎就已經建立起來了。簡單介面如下(具體頁面顯示效果可以修改/root/parker/html/下面的檔案,但是搜尋結果的頁面則需修改/root/parker/src/cgi.c檔案,然後重新編譯方可,要求有一定的html語言功底。)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-941302/,如需轉載,請註明出處,否則將追究法律責任。

相關文章