- 4
- 0
- 约4.02千字
- 约 20页
- 2017-12-23 发布于上海
- 举报
第11章 CGI技术
湖南科技大学计算机科学与技术系 第11章 CGI技术 内容 CGI技术基础 CGI接口规范 FORM表单和CGI CGI程序 11.1 CGI基础 CGI 是 Common Gateway Interface 的缩写,是服务器端和用户沟通的程序,该程序运行在Web服务器上。是早期创建动态网页的主要方法。 网络上仍然有很多工具例如搜索引擎、留言板、BBS等都是 CGI 程序。 CGI可以为我们提供许多HTML无法做到的功能。如: a.一个记数器 (HTML无法做到) b.顾客信息表格的提交以及统计(HTML无法做到) c.搜索程序(Applet无法做到) d.Web服务器读写数据库服务器(Applet无法做到) 要把客户的信息记录在Web服务器的硬盘上,就要用到CGI。 这是CGI最重要的作用,它补充了HTML甚至Applet的不足。 通过使用CGI程序可读写Web服务器上的数据文件或DBMS服务器上的数据,来动态产生HTML结果。 11.1 CGI基础 CGI的工作原理 (1) 浏览器将URL的第一部分(host)解析并联系Web服务器; (2) 浏览器将URL的其余部分提供给Web服务器; (3) Web服务器将URL转换成路径和文件名; (4) Web服务器意识到URL指向一个程序(.cgi),而并非一个静态Web文档(.html); (5) Web服务器准备环境,执行CGI程序; (6) CGI程序执行,读取环境变量和STDIN; (7) CGI程序为将来的内容向STDOUT发送正确的MIME头信息; (8) CGI程序向STDOUT发送其输出的其余部分,然后终止; (9) Web服务器向浏览器发送Html脚本结果,之后关闭与浏览器的连接; (10) 浏览器根据Html脚本结果显示网页。 11.1 CGI基础 编写CGI的程序设计语言 CGI程序可以用几乎所有的程序设计语言编写,只要其编写的程序能在你的Web服务器上运行就可以. 它包括:C/C++、Delphi、Perl、Visual Basic、Java等。 在CGI产生早期,因为Perl语言具有强大的文本处理功能,Perl语言占据了CGI编程主要市场。 目前ASP、JSP技术的产生,对传统的CGI编程产生了重大冲击。 11.2 CGI接口规范 11.2.1环境变量 关于服务器自身信息的专有变量; 关于用户信息的变量; 关于用户请求的信息。 11.2 CGI接口规范 11.2 CGI接口规范 11.2.2 标准输入和标准输出 标准输入(STDIN) 当浏览器向服务器提出请求时(用POST方法),CGI命令文件接收的信息来自于命令文件的STDIN文件描述字。服务器通过此文件描述字,把传送给命令文件的字节数赋给CONTENT_LENGTH环境变量。CGI命令文件用此变量决定有多少来自STDIN的数据要进行处理。服务器同样把CONTENT_TYPE变量提供给CGI命令文件,以确定怎样处理这些数据。 11.2.2 标准输入和标准输出 标准输出(STDOUT) 当命令文件处理完服务器提供的输入数据后,把结果返回给服务器。为了向服务器输出数据,CGI命令文件把输出结果传递给STDOUT(标准输出设备)文件描述字。CGI命令文件返回给服务器的数据通常是一个HTTP响应,其格式为HTTP标准题头,后面是一个空行,接下来是余下的数据内容。一般来说,命令文件的输出结果是它生成的HTML文档。 11.2.3 URL编码与解码 HTTP1.0规范要求URL数据是一种能用于几乎任何硬件和软件平台的方式编码。按这种方法组织的信息被称为URL编码。 由服务器传给脚本的几乎任何东西都是URL编码的。 变量由符号隔开。脚本可以对整个串进行扫描,寻找符号。当找到一个时,脚本在该点断开串,将前面的内容作为一个变量。 11.2.4 MIME类型 MIME(Multipuose Internet Mail Extensions)是一种技术规范。它定义了七种在Internet上传送的基本数据类型:Text,Multipart,Message,Application,Image,Audio和Video。而这些类型有些又包含自己的子类型,如: 11.2.4 MIME类型 在实际操作中,MIME类型是这样被使用的: (1) 打开浏览器访问一个站点; (2) 浏览器向对方服务器发出请求,包括浏览器能处理的MIME类型; (3) 对方Web服务器返回给浏览器各种信息,及信息对应的MIME类型,以便于浏览器处理。 11.3 CGI的传送方式 GET方式 CGI程序从环境变量QUERY_STRING中获取数据。 POST方式 Web服务器通过STDIN向CGI程序传送数据。 HEAD方式 HEAD方法
您可能关注的文档
- 现代物流装备与技术实务23理货岗位.ppt
- 现代物流装备与技术实务51流通加工.ppt
- 现代物流装备与技术实务25保管.ppt
- 现代社会与心理介绍.ppt
- 王维宝之海尔OEC管理模式.ppt
- 王府井 前门 奥林匹克公园 导游资料.ppt
- 现代物流装备与技术实务11.ppt
- 现代饭店经营管理第六章现代饭店管理理论与方法.ppt
- 现当代戏剧鉴赏教学课件.ppt
- 玻璃工业窑.ppt
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 2022届上海市徐汇区高三上学期12月一模英语试卷-Word版含答案.doc VIP
- (完整版)Aitken拖延问卷(API).docx VIP
- MTU软件简易操作培训课件32.pdf VIP
- 2026年春统编版九年级下册语文教学计划及教学进度表.docx VIP
- 学校“最小应急单元”突发事件处置工作指引解读课件.pptx VIP
- 深圳大学《现代通信原理》2021-2022学年第一学期期末试卷.doc VIP
- 人教版八年级数学下册教学工作计划与教学进度表(2026春季学期).docx
- 07CJ03-1:轻钢龙骨石膏板隔墙、吊顶(参考图集).pdf VIP
- 赤壁赋教学实录与课堂案例分析.docx VIP
- 化工工艺培训PPT课件.pptx VIP
原创力文档

文档评论(0)