CGI/MIME/servlet术语解释
CGI→一种协议, 一种标准, 一种规范
使用CGI协议, 能够让用户访问某些动态资源的时候, 触发web服务器, 让web服务器根据CGI协议能够调用外部(web服务器外部)的程序来执行处理这个动态资源. 这些外部的程序将这些动态资源执行后, 并格式化html文本文件后交由web服务器, web服务器再将其传输给客户端.
通常来说web服务器只能服务于静态页面, 但是用户请求的资源可以是多种多样的. 比如视频, 音频等. 但web服务器只能解释纯文本的html格式的文件, 后来借助于MIME可以解析更多的文档→通过MIME技术和http协议, 将用户请求的各种资源都转换为文本格式进行传输, 传输到客户端后 ,客户端浏览器再通过MIME的各种插件, 将其解释会原来的格式, 即如果是视频,插件在客户端将其还原为视频.
MIME (Multipurpose Internet Mail Extensions) 是描述消息内容类型的因特网标准,MIME 消息能包含文本、图像、音频、视频以及其他应用程序专用的数据.
servlet→一种规范, 一种API, 一种使用java语言实现的CGI技术
web服务器只能处理静态页面, 这是事实, 但是当用户请求了一个动态程序, web服务器借助于CGI处理后, 得到一段格式化后的纯文本内容.这段文本内容仅仅是这个动态程序被CGI协议转换后的文本, 它本身是不带有<html><title>这种标签的, CGI技术也实现不了, html标签由web服务器提供, 而数据由动态程序提供这种功能. 但是我们知道的是, 浏览器显示某个页面的时候都是有格式的. 比如<html><title></title></html>. 那么CGI转换后纯文本格式发给浏览器后, 浏览器就会无法解析. 因为浏览器只能解析html标签中的内容. 所以说如果一个用户请求了动态资源,那么动态资源的解析和为该解析结果添加html标签的工作, 都统一由后台的程序来提供. 这样带来一个新的问题. 那就是后台程序都是由程序语言开发后进行编译, 然后print出来. 这样如果由于一个标签的问题, 那么就必须重新编译该程序. 这样就非常麻烦. 于是就出现了框架. 比如MVC.
CGI/MIME/servlet术语解释的更多相关文章
- Servlet具体解释
Servlet具体解释 基本概述 Session在计算机中,尤其是在网络应用中,称为"会话控制".在计算机专业术语中.Session是指一个终端用户与交互系统进行通信的时间间隔,通 ...
- CGI与Servlet的比较
转自:http://www.maxhis.info/java/cgi-vs-servlet/ 谢! 概括来说,CGI和Servlet可以完成相同的功能. 一:CGI(Common Gateway In ...
- Spring AOP术语解释
话说,越来越感觉有些人解释概念真的是晦涩难懂,我刚开始学习Spring aop时,对那些切入点,连接点,引入等概念搞得头疼.太多人就直接照搬定义,让我们这些初学者如何理解啊.下面是我找了大量的博客,终 ...
- k8s~术语解释
文章参考:https://www.kubernetes.org.cn 简介 Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简 ...
- 【SSO单点系列】(6):CAS4.0 单点流程序列图(中文版)以及相关术语解释(TGT、ST、PGT、PT、PGTIOU)
CAS 相关的内容好久没写了,可能下周会继续更新一些内容吧. 在上一篇中的单点流程序列图由于是从官网直接下载来的,上面都是英文,可能有的朋友看不懂,因此修改成中文的. PS:只修改了一个,第二个图明天 ...
- 【java】 field 和 variable 区别及相关术语解释
Having said that, the remainder of this tutorial uses the following general guidelines when discussi ...
- CGI和Servlet的比较
转载自:http://www.maxhis.info/java/cgi-vs-servlet/ 概括来说,CGI和Servlet可以完成相同的功能. CGI(Common Gateway Interf ...
- Listening-lecture|主旨题|术语解释|举例原则|Crash course 哔哩哔哩
Listening-lecture: Major topic: SP1---detail---detail---detail SP2---detail---detail---detail Crash ...
- 图像处理术语解释:什么是PRGBA和Alpha预乘(Premultiplied Alpha )
☞ ░ 前往老猿Python博文目录 ░ Alpha预乘(Premultiplied Alpha)和PRGBA 一般来说四通道图像数据保存的都是ARGB或RGBA,其R.G.B值还没有进行任何透明化处 ...
随机推荐
- MySQL忘记密码解决方案
1.修改本地mysql目录中的my.ini文件 添加skip-grant-tables 2.在win +r 输入cmd,进行mysql的重启启动操作 net stop MySQL 停止服务 ...
- HDU 1856 并查集
http://acm.hdu.edu.cn/showproblem.php?pid=1856 More is better Time Limit: 5000/1000 MS (Java/Others) ...
- java事务(三)——自己实现分布式事务
在上一篇<java事务(二)——本地事务>中已经提到了事务的类型,并对本地事务做了说明.而分布式事务是跨越多个数据源来对数据来进行访问和更新,在JAVA中是使用JTA(Java Trans ...
- 背景色与WM_ERASEBKGND
1.背景模式 SetBkMode(TRANSPARENT/OPACITY) 用来反应文字,图形与窗口背景交互混合模式.透明则表示文字背景与窗口背景之间透明,互不干扰. 2.背景颜色 SetBkColo ...
- Could not find a valid gem 'rails' (>= 0), here is why
很长一段时间之前 Ruby Rails入门--windows下搭建Ruby Rails Web开发环境 ,由于后来将Ruby的安装文件从 C 盘移动到了 D 盘,也修改了 Path 环境变量,ruby ...
- 程序try-catch的绝对健壮性之嵌套
写程序的过程中,我们对try-catch在熟悉不过了,捕获异常进行处理,以保证程序的健壮性. 今日突发一想,如果我们catch中的代码异常了怎么办?我们做以下一种假设 static void Main ...
- 旧书重温:0day2【4】动态获取函数地址
通过以上3篇文章的学习,我们已经可以获取到kernel32.dll的地址了下一步 我们就是获取几个重要的函数 1.GetProcAddress 2.LoadLibrary 有了这两个函数很多函数都可以 ...
- 暴力破解Windows RDP(3389)
RDP是远程桌面协议. $ nmap your_target Starting Nmap 7.01 ( https://nmap.org ) at 2016-09-20 17:29 CST Nmap ...
- 使用MS VS的命令来编译C++程序
以前,我是在linux下使用命令或者makefile来编译C++程序的,最近需要在windows上做点测试.于是使用ms VS来作为开发工具,这种大揽全包的IDE确实好用:点一下菜单,编译结果就出来了 ...
- SQLmap是一款用来检测与利用SQL漏洞的注入神器。
sqlmap 重要参考 http://www.kali.org.cn/forum-75-1.html SQLmap是一款用来检测与利用SQL漏洞的注入神器.开源的自动化SQL注入工具,由Python写 ...