云联天下首页 |  登陆 |  注册 |  密码找回 |  关于我们 | 加入收藏 
首页技术资料Perl 编程→CGI站点搜索 【字号: 】 【背景色 杏仁黄 秋叶褐 胭脂红 芥末绿 天蓝 雪青 灰 银河白(默认色)

CGI站点搜索

网址来源:http://www.kehui.net发布时间: 2002-01-21 18:12:12
<br>----大家好,这是我的第一篇文章,希望能给你带来帮助。



----随着个人网页内容的增多,有时连自己都搞不清自己网站到底已经有什么,来访者面对丰富的内容很可能既高兴又有些无奈,我感兴趣的内容到底在那里呢?有的网站提供了很棒的层式链接网,一个主题分成几个小主题,希望能帮助来访者更快的查找到想要的信息,但是,有时某部分可以属于多个主题,有时你的分类方法和来访者理解的分类方法不一致,造成不能找到本来存在的东西。为解决这个问题,需要一个站点搜索程序来完成这个工作。



----我采用的是perl写的CGI程序完成站点搜索。有2种搜索方法:<br>----1:完全搜索。在整个站点的所有文件中扫描查找。优点:不会遗漏有用的内容,结果全面;缺点:执行时间长,特别是内容特别多时,结果缺少针对性,扫描程序必须和被扫描文件在同一个网站。<br>----2:关键词搜索。对每个文件建立关键词索引,找出文件中能表达此文件意义的关键词,然后把所有文件的关键词放在一起,保存为索引文件。扫描时打开索引文件,在其中查找。优点:速度快,扫描程序和被扫描文件可以在不同网站;缺点:如果关键词选取不全面,很可能遗漏有用的内容。<br>----本站根据自己的实际情况,采用第2种方法。方法如下:<br>----1:申请一个支持CGI的空间,我用的是淄博热线的空间来执行CGI程序(http://www.533.net)



----2:制作search.pl,我改写的是sambar的搜索程序。<br>#!/usr/bin/perl<br>#<br># Perl-based Search Engine<br>#<br># Copyright 1998 Tod Sambar<br># All rights reserved.<br>#



my $docroot = $ENV{’DOCUMENT_ROOT’};<br>my $docrootlen = length($docroot);



#<br># PARSE THE CGI FORM<br>#



# Buffer the POST content<br>read(STDIN, $buffer, $ENV{’CONTENT_LENGTH’});



# Process the name=value argument pairs<br>my $pair;<br>my $name;<br>my $value;<br>my @args = split(/&/, $buffer);



foreach $pair (@args) <br>{

($name, $value) = split(/=/, $pair);



# Unescape the argument value <br>$value =~ tr/+/ /;<br>$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;



# Save the name=value pair for use below.<br>$FORM{$name} = $value;<br>}



#<br># BUILD THE FILE SEARCH LIST<br>#<br># NOTE: We only search *.htm, *.html and *.txt files<br>#<br># WARNING: This search engine is a serious memory hog<br># for large sites with many files.



open (FILE,"index.txt");<br>@LIST = <FILE>;<br>close(FILE);



#<br># SEARCH THE FILES<br>#<br>my $file;<br>my $data;<br>my $match;<br>my $found;<br>my $query = $FORM{’query’};<br>print "Content-type: text/html

kehui 

相关新闻
v CGI在线人数统计 2002-01-21 18:12:12
v 网页投票程序 2002-01-21 18:12:12
v 在线交流程序 2002-01-21 18:12:12
v EOF在留言程序中引起的问题 2002-01-21 18:12:12
v perl编程比php编程如何 2016-02-23 22:24:08
  最新新闻
智慧家居
智慧家居颠覆传统智能家居
智慧云谷让智能家居变成有智慧的
智慧云谷引领智慧家居新生活
科技改变生活 智慧云谷智慧家居系
智慧家居领航者,智慧云谷助你玩
智能家居如何赢得市场美誉度?
智慧云谷智慧家居:创业者有无限
WiFi智能家居你还在用?这样的智
互联网+助推智能家居产业
智慧云谷为您打造真正的智能家居
智能家居产业需要的不是单品,而
新家如何选择开关?智慧云谷iWis
智能传感器-世界首款“智”为你的
智慧云谷开关智能安防智能空气质
智能开关品牌,如何选择智能开关
秋季干燥,智慧家居温湿度传感器
传感器助力智慧家居 感知爱家
iWiscloud智能触摸开关缔造家居装

  最新帖子
 ※这么冷清  [gabc111]
 ※手机APP操作有问题  [ssy11407]
 ※智慧云谷智慧家居将在  [cici]
 ※上传下载  [cici]
 ※下载智慧家居  [apple2008]
 ※秋季干燥,智慧家居温  [apple2008]
 ※智慧家居紧扣热点 安全  [apple2008]
 ※办公大楼如何智慧化管  [apple2008]
 ※智慧云谷工业自控的优  [apple2008]
 ※传感器助力智慧家居 感  [apple2008]
 ※智能开关品牌,如何选  [apple2008]
 ※智慧云谷开关智能安防  [apple2008]
 ※没有专业人员,如何安  [apple2008]
 ※烟台智慧云谷董事长任  [apple2008]
 ※互联网+助推智能家居产  [apple2008]
 ※WiFi智能家居你还在用  [apple2008]
 ※智慧云谷智慧家居:创  [apple2008]
 ※智能家居如何赢得市场  [apple2008]
 ※为什么国外市场很难打  [apple2008]
 ※智能家居产业需要的不  [apple2008]
钯碳回收 硝酸银回收 银浆回收 银焊条回收 回收银浆 氯化钯回收 氯化钯回收 氧化钯回收 回收硝酸钯 钯水回收价格 海绵钯回收 钯炭回收价格 回收镀金板 深圳钯碳回收 镇江氯化钯回收 杭州钯浆回收 银浆回收多少钱 回收钯碳公司 硝酸银的价格 那里有回收金 氯化钯回收价格 江苏擦银布回收 硝酸银价格 德州钯粉回收 银铜回收 回收钯粉 回收铂碳催化剂 佛山钯碳回收 金盐回收价格 海绵钯回收 钯碳高价回收 钯回收价格 钯炭回收