用Delphi编写CGI程序(四)
|
从 这 一 讲 开 始,我 们 将 进 入 CGI 程 序 设 计 的 学 习 过 程。通 过 前 面 几 讲 的 学 习,您 已 经 掌 握 了 CGI 程 序 设 计 的 基 础 知 识。现 在,您 可 以 坐 下 来 编 写 CGI 程 序 了! 三、CGI 程 序 设 计 1、服 务 器 端 附 件 (SSI) 及 网 关 2、网 关:通 过 WEB 连 接 其 他 协 议 在 编 写 CGI 程 序 的 过 程 中,最 好 遵 循 以 下 几 个 应 用 程 序 设 计 的 要 点: (1)提 出 问 题 -- 您 要 解 决 的 问 题 (2)设 计 阶 段 -- 构 想 出 CGI 程 序 的 基 本 框 架 和 功 能 (3)编 码 阶 段 -- 用 行 动 实 现 思 想 (4)程 序 移 植 -- 编 写 可 移 植 的 代 码 (5)精 益 求 精 -- 使 程 序 更 上 一 层 楼 1、服 务 器 端 附 件 (SSI) 及 网 关 在 本 节 将 介 绍 服 务 器 端 附 件 SSI(Server Side Include) 和 网 关。严 格 的 说,SSI 并 不 是 CGI 程 序 设 计 的 内 容,但 SSI 可 以 完 成 一 些 简 单 CGI 程 序 所 能 完 成 的 工 作,有 时 SSI 甚 至 是 最 好 的 选 择。因 此,在 这 里 作 简 单 介 绍。 SSI 定 义 了 一 组 嵌 入 HTML 文 本 的 命 令,在 HTML 文 本 送 往 HTTP 客 户 端 前,WEB 服 务 器 对 这 些 SSI 命 令 先 作 预 处 理,将 处 理 后 的 HTML 文 本 输 出 到 HTTP 客 户 端 的 浏 览 器。 SSI 的 命 令 格 式 是: < !--# 命 令 参 数 =" 值 " --> SSI 命 令 同 Java 或 JavaScript 不 同,它 是 在 服 务 器 端 处 理 的,而 不 是 在 客 户 端 处 理 的,这 一 点 同 CGI 程 序 是 相 似 的。当 然,在 SSI 的 功 能 范 围 内,其 优 点 同 CGI 程 序 相 同,可 以 提 高 服 务 器 的 资 源 利 用 率,而 且 在 客 户 端 用 任 何 WEB 浏 览 器 都 可 以 浏 览 含 有 SSI 的 HTML 文 本。 下 面 是 常 用 的 六 个 SSI 命 令: (1)Include命令 (2)echo 命 令 (3)exec 命 令 (4)config 命 令 (5)fsize 命 令 (6)flastmod 命 令 include 命 令 唯 一 支 持 的 参 数 是 file,这 是 在 当 前 HTML 文 本 中 插 入 file 参 数 指 定 的 文 件 的 内 容。如 果 您 了 解 C 语 言,可 以 看 出 它 和 C 语 言 中 的“#include”命 令 的 功 能 是 一 样 的。例 如,有 两 个 HTML 文 本:main.html 和 header.html,在 main.html 中 使 用 include 命 令: main.html: < html> < tilte> Test Include SSI Command < /title> < !--#include file="header.html" --> < body> The above header comes from header.html! < /body> < /html> header.html: < H1> This is a title in header.html! < /H1> |