第5讲 构建Web应用技术(服务器端技术)要点
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CGI概述
CGI (Common Gateway Interface) : 通用网关接口是第一种真正使服务器能根据
运行时的具体情况,动态生成HTML页面的技 术。
通过CGI接口,Web服务器能够执行 CGI应用程序,接收用户的输入,并将应 用程序的输出,如文字、图形、声音等传 递给一个Web浏览器。 CGI程序语言:C、Shell、Perl和Visual Basic 等。
CGI 工作原理(Windows平台)
CGI程序执行
CGI 是运行在服务器上的程序。它可以用任 何语言编写 - 只要能够在你的服务器上运行。 CGI 脚本可能是一个编译好的程序或者批命 令文件或者其他可执行的程序。 服务器端对每个 CGI请求产生一个新的进程。
CGI程序执行
编程语言 : C/C++ Perl是Practical Extraction and Report Language的缩写 TCL即Tool Command Language,它是 高级的跨平台的 Script语言 VB 缺点:每次对CGI的请求产生新进程,会 限制服务器处理多请求的能力。
CGI概述
CGI程序在UNIX系统中放在cgi-bin子目录 下,在Windows系统中放在cgi-win子目录下。 CGI程序两种调用方式: (1)URL调用: http://gjy.sic.o.ml.org/cgi-win/cgi.exe (2)HTML里的Form调用,处理表单。 CGI工作流程:获取HTTP请求信息;执行 CGI程序;生成HTML文件返回浏览器。
CGI 工作原理
http://server/form -proc.exe Web Server CGI Program
HTML
Unix平台下,Web服务器与CGI程序通过输入流scanf获得 用户输入、输出流printf生成输出结果; Windows平台下通过文件系统来实现Web服务器与CGI程 序的信息交流。浏览器的当前文件使用get,post等方法调用 CGI程序,并将要传送的信息送到服务器端 。CGI通过标准输 入(STDIN)获取用户输入信息,通过标准输出(STDOUT) 向用户传递结果。
服务器端技术发展
静态 -->动态 SSI(Server Side Includes) 1993年,CGI 1.0 发布。 1994年,发明PHP 1996年 ,ASP技术引入 1997年,Servlet技术问世 1998年,JSP技术诞生
服务器端技术概况
目前在服务器端生成动态页面的技术有: 公共网关接口 服务器端脚本技术 服务器端插件技术(API) Servlet技术 JSP技术 中间件技术
CGI与PHP、ASP
<html> <body> <?php $db = mysql_connect(“localhost”, “root”); mysql_select_db(“mydb”,$db); $result = mysql_query(“SELECT * FROM employees”,$db); printf(“First Name: %s<br>n”, mysql_result($result,0,“first”)); printf(“Last Name: %s<br>n”, mysql_result($result,0,“last”)); ?> </body> </html>
最早的服务器端网页生成技术- SSI
SSI通常称为服务器端嵌入,是一种基于服 务器的网页制作技术; 在以.shtml为扩展名的SSI文件中,包含标 准的HTML编码和SSI指令; 标准的HTML编码会被直接送到浏览器上, 而内嵌的SSI命令则先被网络服务器解释执行, 输出信息也将作为标准的HTML而被送至浏览 器。
服务端插件技术
插件即英文的 Plug-In,它也是程序,它是用 遵循一定规范的API编写出来的。Web浏览器 和服务器都能够直接调用插件代码。插件 ( Plug-In )软件安装之后,就成为他们的一 部分,处理特定类型的请求。最著名的API是 Netscape 公 司 的 NSAPI 和 Microsoft 公 司 的 ISAPI. 缺点:由于NSAPI或ISAPI是动态链接的方式, 因此在执行时若出现问题,会导致 Web 服务 器瘫痪 ;对平台的依赖性太高;只能使用 C语 言开发。
服务器端脚本技术
页面中嵌入脚本,页面被请求时脚本由服务器 解释执行,产生动态内容 。 可采用的技术: IBM Net.data MicroSoft: ASP Allaire: ColdFusion PHP 缺点:局限于特定web服务器产品和OS
CGI与PHP、ASPwenku.baidu.com
1994年,Rasmus Lerdorf发明了专用于 Web服务端编程的PHP(Personal Home Page Tools)语言; PHP语言将HTML代码和PHP指令合成为 完整的服务端动态PHP页面文件、具有 PHP文件处理功能的WEB服务器生成 HTML文档; 1996年,Microsoft借鉴PHP的思想,在 其Web服务器IIS 3.0中引入了ASP技术。 ASP使用的脚本语言是我们熟悉的 VBScript和javascript。
最早的服务器端网页生成技术- SSI
<html> <head> <title>SSI example </title> </head> <body> <h2>新闻 </h2> <P> <!--# include file="news.txt" --> <p>新闻更新日期: <!--# flastmod file="news.txt" --> </body> </html> *功能非常有限
构建Web应用技术 -服务器端技术
服务器端逻辑体系结构
B/S 交互动作:浏览器的每一个动作都产 生一个对服务器的请求,服务器处理这 个请求计算结果,生成一个新的页面发 送到客户端。 优点:客户端初次启动快、对客户端资源 要求低。 支 持 的 技 术 : 服 务 器 端 技 术 , 如 JSP Java Servlet、ASP等。