精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● CGI>>编程技巧>>用Delphi编写CGI程序(一)

主题:用Delphi编写CGI程序(一)
发信人: mark7312(小马哥)
整理人: workingnow(2002-09-30 12:01:53), 站内信件
在 这 里, 我 将 循 序 渐 进 的 写 一 点 CGI 程 序 的 开 发 与 应 用, 希 望 能 对 大 家 有 一 定 帮 助。 我 认 为 读 者 有 Delphi 程 序 设 计 的 初 步 知 识, 只 是 没 有 设 计 过 CGI 程 序。 因 此, 如 果 您 没 有 用 过 Delphi , 那 得 学 些 Delphi 的 基 础。 
    一、 软 件 平 台:  

    我 使 用 Windows 95 系 统, 用 OmniHTTPD 作 WEB 服 务 器, 用 Perl for Win32 作 Perl 语 言 的 解 释 器, 用 Delphi 4.0 Client/Server 作 CGI 开 发 工 具, 用 Borland InterBase 作 SQL 数 据 库 服 务 器。 这 种 平 台 的 优 点 在 于 易 用 性 及 较 高 的 开 发 效 率; 缺 点 在 于 不 太 稳 定, 运 行 效 率 较 低。  

    同 时, 我 推 荐 另 一 种 平 台: 使 用 Linux 系 统 作 WEB 服 务 器 及 Perl 解 释 器, 用 MiniSQL 作 数 据 库 服 务 器, 用 GNU C/C++ 和 CGI C/CGI C++ 作 CGI 开 发 工 具。 这 种 平 台 的 优 点 在 于 很 高 的 稳 定 性, 很 高 的 效 率, 同 时, 完 全 免 费! 缺 点 在 于 系 统 配 置 较 困 难, 缺 少 文 档, 开 发 效 率 较 低。  

    在 今 后 的 文 章 中, 对 于 较 简 单 的 CGI 程 序 我 将 同 时 给 处 Delphi 、 Perl 和 C 的 程 序, 其 他 的 程 序 我 用 最 有 效 的 开 发 工 具 编 写 程 序, 但 是, 至 少 包 括 Delphi 和 Perl 中 的 一 种, 使 得 在 第 一 种 Windows 95 平 台 上 可 以 使 用。  

    这 里, 我 要 说 明 一 下 关 于 移 植 的 问 题: Perl 可 以 移 植 到 任 何 有 Perl 解 释 器 的 平 台; C/C++ 也 可 以 移 植 到 任 何 有 ANSI C 的 编 译 程 序 的 平 台; Delphi 只 能 在 Windows 95/NT 平 台 上 使 用; SQL 数 据 库 可 以 移 植 到 任 何 符 合 SQL 语 言 的 数 据 库 系 统 中。 在 我 的 Delphi 程 序 中, 我 尽 量 调 用 SQL 存 储 程 序 处 理 数 据, 不 用 Delphi 直 接 处 理 数 据, 以 便 较 方 便 的 向 其 他 编 程 语 言 移 植。  

    下 面 介 绍 Perl 及 OmniHTTPD 的 安 装。 在 安 装 之 前, 您 的 Windows 95 必 须 安 装 了 TCP/IP 协 议, 否 则, 请 您 将 TCP/IP 协 议 安 装 上。  

    二、 Perl for Win32 的 安 装 及 配 置:  

    您 可 以 从 http://www.zdnet.com 上 搜 索“ Perl ”, 可 以 找 到 Perl for Win32 , 这 是 一 个 免 费 软 件。 下 载 了 Pw32i386.exe 后 直 接 运 行, 它 是 一 个 自 解 包 程 序, 将 文 件 解 包 到 c:\perl 目 录 下, 按 提 示 回 答 了 所 有 问 题 即 完 成 安 装。 


    Perl for Win32 不 用 配 置。 如 何 测 试 Perl 正 确 安 装 呢? 我 们 来 写 一 个 测 试 程 序:  

    建 一 个 名 为 Hello.pl 的 文 本 文 件, 文 件 中 只 有 一 行:  print “ Hello, Perl! ”   

    在 DOS 窗 口 中 键 入 命 令: c:\perl\bin\perl Hello.pl , 您 应 该 看 到 有 一 行“ Hello, Perl! ” 输 出, 这 样, Perl 就 安 装 正 确 了。  

    三、 OmniHTTPD 的 安 装 及 配 置:  

    同 样, 您 可 以 从 http://www.zdnet.com 上 搜 索“ HTTPD ”, 可 以 找 到 OmniHTTPD , 这 也 是 一 个 免 费 软 件。 下 载 了 ohttpd101.exe 后, 按 提 示 完 成 安 装, 在 缺 省 情 况 下, OmniHTTPD 将 被 安 装 在 c:\httpd 目 录 下。  

    安 装 完 成 后, OmniHTTPD 自 动 运 行, 图 标 在 Windows 95 的 Tray 中. 

    我 们 要 设 置 一 下 它 的 Perl 解 释 器 路 径: 点 击 OmniHTTPD 的 图 标, 在 弹 出 的 窗 口 选 择 Admin/Properties , 选 择 属 性 的 Advanced 页, 将 Perl CGI Command Line 设 成 c:\perl\bin\perl.exe 

    这 样, 就 设 置 完 成。  

    您 可 以 用 Web 浏 览 器 打 开 http://local/default.html 进 行 测 试, 它 有 关 于 OmniHTTPD 的 说 明 及 CGI 的 测 试。  

    要 说 明 的 一 点 是: OmniHTTPD 将 html 文 件 放 在 c:\httpd\htdoc 目 录 下, 将 CGI 程 序 放 在 c:\httpd\cgi-win 和 c:\httpd\cgi-bin 目 录 下, 我 们 的 程 序 一 般 放 在 c:\httpd\cgi-bin 目 录 下。  



----
http://kmkyear.home.chinaren.com/000.jpg 

[关闭][返回]