| 首页 | 新闻 | 网页 | 设计 | 色彩 | 原创 | 视觉 | 素材 | 动漫 | 酷站 | 策划 | 文案 | 访谈 | 运营 | 编程 | 数据库 | 服务器 | 下载 | 图库 | 
您的位置: 幽幽天空 > 网页 > 编程开发 > Perl教程 > 文章正文 用户登录
各种漂亮的鼠标UR
去除头部banner
修改新浪博客上面
Google AdSenser 
Skype为推广员提供
Dotworlds免费提供
Better fonts免费
TinyURL免费缩短网
RealTracker提供免
谁杀死了站长(We

Perl CGI 程式写作常问问题集(4)程式设计疑难杂症           

Perl CGI 程式写作常问问题集(4)程式设计疑难杂症

作者:佚名 来源:不详 更新:2006-8-25 21:05:35 错误报告 我要投稿
标签,要如何叫出 Perl CGI 程式?
您可以直接去打开该 CGI 程式的 URL: 

http://some.machine/cgi-bin/your_program.pl
您也可以在文件中使用连结的方式,例如: 

    print "Status: 204 No Content\n\n";
    print '除非您的浏览器不支援状态码 204 ,否则您不该看到这部份' , "\n";
} else {
    #
    # Process Data Here
    #
}


--------------------------------------------------------------------------------

Q4.22: 那些server 回应码 (server response codes)是干什麽用的?有什麽意义?
CGI 程式可以传送 server 然後 server 会把它转送给浏览器。例如: 假设您想送 ``No Content'' (意思是告诉浏览器不要再重新下载该网页),那麽您得送一个 204 的回应码(见上例)。 



--------------------------------------------------------------------------------

Q4.23: 为什麽 print "Location: http://host/page.html\n" 不 work?又为什麽它只 work 一次,但随後的转向就都弄错了呢? 
CGI 程式只能送一个 Location 标头。还有,如果您要 server 做转向的 动作您就不该送 MIME 类别。譬如,以下的例子是错误的示范,尽管在有些 servers 上行的通: 

#!/usr/local/bin/perl -w

.
.
.
print "Content-type: text/plain\n"
print "Location: http://some.machine/some.doc\n\n"";


--------------------------------------------------------------------------------

Q4.24: 要如何让 server 在每个 HTML 网页的底部都自动加上一个:「最近更新日期: ...」的告示?或者,是不是只有 SSI 的网页才能这麽做?CGI 程式的日期要如何取 得?
如果您是透过 CGI 以动态方式来产生您的文件,那麽要插入一个时间标记非常简 单。以下是一例(仅适用於 Perl 5): 

$last_updated = localtime;
print '最近更新日期: ', "$last_updated\n";

或者是: 

require "ctime.pl";

$last_updated = &ctime(time);
print '最近更新日期: ', "$last_updated\n";

甚至像这样: 

chop($date = `/usr/local/bin/date`);
print '最近更新日期: ', "$last_updated\n";

您可以用 SSI 来达到这个效果,像这样: 

<--#echo var="LAST_MODIFIED"-->

--------------------------------------------------------------------------------

Q4.25: 什麽样的场合下以 Perl 写 CGI 程式会显得太小题大作,因为用 shell 就可以做到?而什麽样的场合对 Perl 来说又过於困难?用 C++ 做这类的事不是好得多吗?那用 C 呢?
每一个语言都有其长处和短处。相信这句话您听过很多次了。所以一切全看您要做 的是什麽而定。如果您预期正准备写的 CGI 程式每个钟头会有几千几万人次连去 使用,那麽您应该选用 C 或 C++来写。如果您求快的话(指发展所花费的时间而言), 那麽 Perl 是正确的选择! 

一般说来,您应避免用 shell 来做任何形式的 CGI 程式设计,因为 shell 在先 天上容易产生安全问题。 
文章录入:skyuu    责任编辑:skyuu 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
    姓名:  评 分: 1分 2分 3分 4分 5分
     
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用幽幽天空服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表机友个人观点,与本网站立场无关。