用Delphi编写CGI程序(一) 作者:戚文敏 教学纲要 随着Internet的广泛应用, CGI(通用网关接口)程序的开发需求越来越 大;同时,有些玩家喜欢自己建立Internet站点,为了拥有比较吸引用户 的功能,CGI程序是不可缺少的. 在这里, 我将循序渐进的写一点CGI程序的开发与应用, 希望能对大 家有一定帮助.我认为读者有Delphi程序设计的初步知识,只是没有设计 过CGI程序. 因此,如果您没有用过Delphi,那得学些Delphi的基础. 在chinabyte的
网络中有我写的 《Delphi的故事》, 可以从那里
学习一些基础. 一,软件平台: 我 使 用 Windows95 系 统 , 用 OmniHTTPD 作 WEB 服 务 器 , 用 PerlforWin32作Perl语言的解释器,用Delphi4.0Client/Server作CGI开发工 具,用BorlandInterBase作SQL数据库服务器.这种平台的优点在于易用 性及较高的开发效率;缺点在于不太稳定,运行效率较低. 同时,我推荐另一种平台:使用Linux系统作WEB服务器及Perl解释 器,用MiniSQL作数据库服务器,用GNUC/C++和CGIC/CGIC++作CGI 开发工具.这种平台的优点在于很高的稳定性,很高的效率,同时,完 全免费!缺点在于系统配置较困难,缺少文档,开发效率较低. 在今后的文章中,对于较简单的CGI程序我将同时给处Delphi,Perl 和C的程序,其他的程序我用最有效的开发工具编写程序,但是,至少包 括Delphi和Perl中的一种,使得在第一种Windows95平台上可以使用. 这里,我要说明一下关于移植的问题:Perl可以移植到任何有Perl解 释器的平台;C/C++也可以移植到任何有ANSIC的编译程序的平台; Delphi只能在Windows95/NT平台上使用;SQL数据库可以移植到任何符 合SQL语言的数据库
系统中.在我的
Delphi程序中,我尽量调用SQL存储 程序处理数据,不用Delphi直接处理数据,以便较方便的向其他编程语言 移植. 下面介绍Perl及OmniHTTPD的安装. 在安装之前,您的Windows95必须安装了TCP/IP协议,否则,请您 将TCP/IP协议安装上. 二,PerlforWin32的安装及配置: 您可以从zdnet上搜索 "Perl" 可以找到PerlforWin32, , 这是一个
免费软件. 下载了Pw32i386.exe后直接运行,它是一个自解包程 序, 将文件解包到c:\perl目录下, 按提示回答了所有
问题即完成安装. (见 下图)
PerlforWin32不用配置.如何测试Perl正确安装呢?我们来写一个测 试程序: 建一个名为Hello.pl的文本文件,文件中只有一行: print"Hello,Perl!" 在DOS窗口中键入命令:c:\perl\bin\perlHello.pl,您应该看到有一行 "Hello,Perl!"输出,这样,Perl就安装正确了. 三,OmniHTTPD的安装及配置: 同样,您可以从zdnet上搜索"HTTPD",可以找到 OmniHTTPD,这也是一个免费
软件.下载了ohttpd101.exe后,按提示完 成安装,在缺省情况下,OmniHTTPD将被安装在c:\httpd目录下. 安装完成后,OmniHTTPD自动运行,图标在Windows95的Tr
ay中, 见下图:
我们要设置一下它的Perl解释器路径:点击OmniHTTPD的图标,在 弹 出 的 窗 口 选 择 Admin/Properties , 选 择 属 性 的 Advanced 页 , 将 PerlCGICommandLine设成c:\perl\bin\perl.exe,见下图:
这样,就设置完成. 您可以用Web浏览器打开local/default.html进行测试,它有关于 OmniHTTPD的说明及CGI的测试. 要说明的一点是:OmniHTTPD将html文件放在c:\httpd\htdoc目录下,
将CGI程序放在c:\httpd\cgi-win和c:\httpd\cgi-bin目录下,我们的程序一般 放在c:\httpd\cgi-bin目录下. 在下一讲,我将介绍CGI的基础知识.
用Delphi编写CGI程序(二) 作者:戚文敏 教学纲要 在上一讲中, 我们设置了用于开发CGI程序的系统. 今天, 我们进入: 第二部分,CGI程序设计的概念…… 第二部分,CGI程序设计的概念 1.0,CGI程序的功能: 首先,什么是公共网关接口(CGI)呢?CGI是一个用于定义WEB 服务器与外部程序之间通信方式的标准,使得外部程序能生成HTML, 图象或者其他内容,而服