CGI脚本工作原理

[09-12 13:08:10]   来源:http://www.88dzw.com  电路基础   阅读:8686

文章摘要:CGI脚本工作原理引言新的网站设计人员在建立网站之后经常问到一个问题就是:“什么是CGI脚本,如何在我的网站上使用它?”或“如何在我的网站上创建交互式表单?”。 在本文中,我们将回答有关CGI脚本的问题,并演示如何创建自己的脚本。在此过程中,您还将了解有关Web服务器的一些知识。让我们开始吧! Web服务器如Web服务器工作原理一文中所述,Web服务器相当简单。从根本上说,Web服务器只是从磁盘中检索出文件,并通过网络将其发送到发出请求的浏览器。假设您键入URL:http://www.bygpub.com/books/tg2rw/author.htm。Web服务器将会获得一个针对文件/book

CGI脚本工作原理,标签:电子电路基础,模拟电路基础,http://www.88dzw.com

CGI脚本工作原理

引言


新的网站设计人员在建立网站之后经常问到一个问题就是:“什么是CGI脚本,如何在我的网站上使用它?”或“如何在我的网站上创建交互式表单?”。

在本文中,我们将回答有关CGI脚本的问题,并演示如何创建自己的脚本。

在此过程中,您还将了解有关Web服务器的一些知识。让我们开始吧!

Web服务器

如Web服务器工作原理一文中所述,Web服务器相当简单。从根本上说,Web服务器只是从磁盘中检索出文件,并通过网络将其发送到发出请求的浏览器。假设您键入URL:http://www.bygpub.com/books/tg2rw/author.htm。Web服务器将会获得一个针对文件/books/tg2rw/author.htm的请求。查看下图,您可以了解服务器是如何解决该请求的:


在安装过程中,Web服务器已被告知c:My Documentswww是服务器的根目录。然后,该服务器会从根目录中找出/books/tg2rw/author.htm。当您请求URL http://www.bygpub.com/books/tg2rw/时,该服务器就会知道您正在查找该目录的默认文件。它会查找一些不同的文件名以试图找到默认文件:index.html、index.htm、default.html和default.htm。根据服务器的不同,它也可以查找其他文件名。因此,该服务器会将 http://www.bygpub.com/books/tg2rw/转换为 http://www.bygpub.com/books/tg2rw/index.htm并传送该文件。所有其他文件必须通过明确给出文件名来指定。

这就是所有Web服务器处理静态文件的方式。大多数Web服务器还可以通过称作通用网关接口(CGI)的机制处理动态文件。您已经在Web上的各种地方看到过CGI,只不过您当时可能对它并不了解。例如:

  • 您可以在任何留言簿上通过HTML表单输入消息,当下一次查看此留言簿时,页面将会包含您输入的新条目。
  • Network Solutions上的WHOIS表单允许您在表单上输入域名,返回的网页将根据输入的域名而有所不同。
  • 任何搜索引擎都允许您在HTML表单上输入关键字,然后它将根据您输入的关键字动态创建页面。

所有这些动态页面使用的都是CGI。

CGI机制

在大多数Web服务器上,通过以下方式使CGI机制标准化。在服务器视为根目录的普通目录树中,可以创建一个名为cgi-bin的子目录。(可以在上一页的图示中查看此目录。)然后,服务器了解到不应只是读取和发送从特殊cgi-bin目录中请求的任何文件,而应执行它们。执行的程序的输出内容是它实际发送给请求该页的浏览器的内容。一般来说,可执行程序既可以是一个纯可执行程序(就像C编译器的输出),也可以是一个PERL脚本。PERL是一种用于CGI脚本的最流行的语言。

假设您在浏览器中键入URL:http://www.howstuffworks.com/cgi-bin/search.pl。由于服务器了解到search.pl位于cgi-bin目录中,因此它会执行search.pl(一个PERL脚本),并将执行的输出内容发送到浏览器。

您可以编写自己的脚本并试验CGI,前提是:

  • 您了解某种编程语言,如C或PERL。
  • 您对处理CGI脚本的Web服务器拥有访问权限。如果您已为用于承载您的网站的Web托管服务付费,则可以选择通过您的主机来访问CGI脚本。有关详细信息,请查看托管服务。如果您没有为用于承载您的网站的Web主机服务付费,则可以通过在家用计算机上安装Web服务器并学习如何使用它来进行试验。尽管第二种选择要稍微复杂一些,但您在此过程中肯定可以学到很多知识!

简单的CGI脚本

假定您对cgi-bin目录拥有访问权限(请参阅上一节),了解C编程语言或PERL,则可以使用CGI执行一系列有趣的试验。让我们从创建最简单的CGI脚本开始。

[1] [2] [3] [4]  下一页


Tag:电路基础电子电路基础,模拟电路基础电路基础

《CGI脚本工作原理》相关文章