},
};
cgi模块自动为我们处理url大部分转义和非转义字符
print “<a href=“,$cgi->escape($unescaped_url).'?'.$cgi->escape($key).'='.$cgi->escape($value),“>link</a>“;
url方法仅仅返回脚本的url
$cgi->url(-full=>1) # http://myserver/path/script/nistal
$cgi->url(-absolute=>1) #absolute path /home/sites/cgi/script/nistal
$cgi->url(-relative=>1) #relative url /cgi/script/nistal
保存和加载cgi状态
保存: if(open(state , “> $state“))
{
$cgi->save(state);
close state;
}
加载: if(open(state,$state))
{
$cgi->new cgi(state);
close state;
}
以下是简单的cgi脚本:
1.一个简单的web服务器,为由$docroot声明的跟目录外的页面服务。它仅仅处理get请求,并且如果他们同声明的url相匹配的话将文档回送给客户机
#! /usr/local/perl -w
#httpd.pl
use warnings;
use http::daemon;
use http::status; #for rc_forbidden
my $docroot= “/home/httpd/html“;