在Linux系统下建立强大的FTP搜索引擎

运维 系统运维
Linux正大行其道,不少朋友相信已经用它架设过各种服务,什么Web、FTP、BBS等等等啦,这次,我向大家介绍另外一个在linux下运行的服务器软件----NoseyParker,一个强大的FTP搜索引擎,只要一些简单的步骤,一个强大的搜索引擎举手间就建立起来了,各位且听我慢慢道来。 
Linux正大行其道,不少朋友相信已经用它架设过各种服务,什么Web、FTP、BBS等等等啦,这次,我向大家介绍另外一个在linux下运行的服务器软件----NoseyParker,一个强大的FTP搜索引擎,只要一些简单的步骤,一个强大的搜索引擎举手间就建立起来了,各位且听我慢慢道来。 

parker是一个FTP服务器搜索引擎,是基于Linux的开放源码软件。主要检索各个FTP服务器上面的文件,然后把目录信息保存在本地的文件中,如果有查询请求,把检索本地的数据,把相关的信息(文件所在的地址)返回给请求者。教育网内很多FTP站点都采用这个作为搜索引擎,比如清华九井等。

使用方法很简单,如果你是linux系统,应当不会有什么问题。如果是别的unix-like系统,也可仿照作相应处理。

本文以红旗2.0桌面版为例说明整个的架构过程。因为相对来讲笔者个人觉得红旗Linux比较好操作,中文汉化也做得很好。他的Web Server(Apache)设置可以通过Xwindow界面来实现,比较方便初级用户。

首先你得获取一份parker的源代码,推荐到这个站点搜索一下,你可以找到一打以上的提供源代码的站点:http://e.pku.edu.cn,拿到源代码之后,我们就可以开始安装了。

基本安装方法如下(可以参考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语言功底。

(T004) [#page_#][#page_#]

你应当使你的配置尽量的简单——不要安装那些用不到或根本不必要的模块。一般说来,一个标准的non-DSO(非动态共享对象)Apache,在安装一个perl,对大多数人都是足够的。

关于DSO和mod-ssl需要注意的地方:

如果你打算把任何东西都按照DSO模版进行编译,那你首先要建立mod-ssl,然后你确实要按照下面的顺序建立自己的Apache目录树。Mod-ssl会明显的修改Apache 建立的目录树,据我的经验,在使用我们刚才提到的软件版本的前提下,下面的顺序是做起来最简单的顺序:

1、建立Apache.

2、在Apache中建立和增加mod-ssl.

3、在Apache中建立和增加php 和mod-perl.

4、你应该在适当的地方记录下来你是怎么样编译你的目录树的,以便再做时参考。(你可以把其打印出来,并加上注释)

安装了各种软件之后,最终的虚拟根环境化的目录树有23MB,其中包含了8MB的共享库和perl。下面是基于DSO安装的文件的总结(以KB表示):


  ROOT# pwd   /www   ROOT# du -s .   22737 .   ROOT# du -s *   6832apache   0 bin   1 dev   7 etc   6679lib   1 tmp   9215usr   1 webhome   ROOT# du -s apache /*   600 apache /bin   3 apache /cgi-bin   125 apache /conf   1560apache /htdocs   133 apache /icons   392 apache /include   3925apache /libexec   64 apache /man   29 apache /var   ROOT# du -s usr/*   8410usr/Local   336 usr/bin   340 usr/lib   128 usr/share

【编辑推荐】

  1. Linux系统下配置Netware服务器方法
  2. 嵌入式设备上的 Linux 系统开发
  3. 深度介绍Linux内核是如何工作的(1)
责任编辑:张燕妮 来源: zol.com.cn
相关推荐

2011-06-20 18:23:06

SEO

2009-02-19 09:41:36

搜索引擎搜狐百度

2009-09-22 16:23:52

搜索引擎

2011-05-10 12:55:13

反向链接

2020-03-20 10:14:49

搜索引擎倒排索引

2017-08-07 08:15:31

搜索引擎倒排

2016-12-26 13:41:19

大数据搜索引擎工作原理

2010-06-13 16:27:28

搜索引擎

2010-04-20 11:43:46

2012-09-07 13:22:21

搜索搜狗

2022-10-08 09:13:18

搜索引擎⽹站

2010-01-28 10:01:22

UbuntuLinux搜索引擎

2022-08-15 14:56:30

搜索引擎分布式

2020-07-31 09:55:27

Linux分布式Elasticsear

2011-06-22 17:28:51

SEO

2012-05-14 11:01:50

搜索引擎微软

2011-06-15 19:09:24

搜索引擎

2020-08-10 14:39:30

搜索引擎

2020-02-24 08:52:08

开源索引YaCy

2015-08-31 10:41:58

搜索引擎Google云应用
点赞
收藏

51CTO技术栈公众号