CGI version1.1-第一章 介绍 (译)
CGI version1.1-第一章 介绍
1.简介
1.1 用途
CGI 是为 HTTP服务器 与 CGI脚本 在 响应客户端请求分配职责,
客户请求由url,方法与关于传输协议的附属信息,
CGI定义了一些抽象参数用于描述从客户端传来的请求,定义了HTTP服务器与脚本之间的编程接口.
服务器端的职责是管理连接,数据转换、传输,与客户端请求相关联的网络问题,
那么客户端就负责客户端的问题,比如数据访问,文档处理.
1.2 要求
关键字: 'MUST','MUST NOT','REQUIRED','SHALL','SHALL NOT','SHOULD','SHOULD NOT','MAY'和'OPTIONAL'
在这个文档里作为说明
一个实现如果不能满足实现此协议的所有’must‘要求,那么它就是不合格 的
无条件支持的实现 是 满足所有must 和 所有 shuold的 要求
一个满足有的must的 , 但是没有满足所有required的实现是
有条件的兼容实现
1.3 文档
这个文档里没有定义所有的CGI的函数和特性,下面列出了此文档没有说明的特性
'system-defined’ 系统定义
这部分在不同的系统 有着不同的定义,但是在一样系统下的不同实现是一样的
在文档第7章 一个系统通常会定义一个操作系统的类
‘implementation-defined’ 实现定义
特性实现之间存在差异,个别的特性实现必须在文档里申明
1.4 术语
此文档使用很多在HTTP/1.1里定义的术语,无论如何,
在这个文档里的术语使用的,不怎么符合他们原先的定义,
它们在本文档的含义:
‘meta-variable'
服务器传给CGI脚本的参数
'script'
服务器会根据接口调用,它不是一个特质的编程语言,它可能是动态加载的或者是是一个 库
’server‘
服务器
CGI version1.1-第一章 介绍 (译)的更多相关文章
- Gradle2.0用户指南翻译——第一章. 介绍
翻译项目请关注Github上的地址:https://github.com/msdx/gradledoc本文翻译所在分支:https://github.com/msdx/gradledoc/tree/2 ...
- Akka in action (第一章 介绍Akka)
在本章 概述Akka 了解Actors和Actor系统 Akka的适用范围 在第一章中,会介绍给你Akk的个方面,它能做什么,与现有的解决方案有那些不同.重点关注Akka有哪些功能和使用范围和强大的并 ...
- IOS开发之控件篇UITabBarControllor第一章 - 介绍
UITabBarControllor的基本样子 官方有个图介绍这个TabBar的结构,我们先来看看这个结构图 --------------------------------------------- ...
- 第一章 介绍Django
Django是一个网络开发框架,有了这个框架,能是网站开发更高效有趣,能轻松的创建和维护高质量的网站应用. 这一本书的目的是使读者成为一个Django的专家.主要着重两点.第一,深入的解释Django ...
- Google C++测试框架系列入门篇:第一章 介绍:为什么使用GTest?
原始链接:Introduction: Why Google C++ Testing Framework? 词汇表 版本号:v_0.1 介绍:为什么使用GTest? GTest帮助你写更好的C++测试代 ...
- IOS开发之控件篇UINavigationController第一章 - 介绍
UINavigationController是一个比较常见的控件,它连接个视图,例如一个视图走到另外一个视图,之间的联系都可以用这个NavigationController的方法 一般都会由两个部分组 ...
- kubernetes第一章--介绍
- docker第一章--介绍和安装
- CuSparse 第一章
(部分翻译) 第一章 介绍 1. 命名惯例 CUSPARSE 包含了一系列处理稀疏矩阵的基本的线性代数子程式.是cuda函数库的一部分,从C,C++中调用. 该库例程可以分为四类: 第一层:在稠密向量 ...
随机推荐
- 【线段树成段更新-模板】【HDU1698】Just a Hook
题意 Q个操作,将l,r 的值改为w 问最后1,n的sum 为多少 成段更新(通常这对初学者来说是一道坎),需要用到延迟标记(或者说懒惰标记),简单来说就是每次更新的时候不要更新到底,用延迟标记使得更 ...
- Time Out 访问数据库超时处理 .NET
using System.Reflection; using System.Data.SqlClient; TransactionSelectTableAdapter adapter = new Tr ...
- JavaScript Dispatch Event
<html> <head> <script type="text/javascript"> function performClick(elem ...
- C++ Primer之 十二章 类
1.关于类的const对象 const对象只能调用声明为const的成员函数,在这篇csdn博客中也讨论了这个问题. 究其原因是因为 const 对象A 调用了非const函数F, F因为没有cons ...
- HDU1042(N!)题解
HDU1042(N!)题解 以防万一,题目原文和链接均附在文末.那么先是题目分析: [一句话题意] 计算N的阶乘并输出. [题目分析] 题给范围上限是10000,那么毫无疑问是大数题.之前我整理过各种 ...
- VC ++ 后台消息模拟
HWND TO=; //TO=::FindWindow(_T("Chrome_RenderWidgetHostHWND"),NULL); TO=::FindWindow(_T ...
- STOI补番队胡策
ROUND 1 第一轮是我出的. 比赛情况: #1 NanoApe 300 (完美AK) #2 && #3 swm_sxt / ccz 200 A.candy 这道题就是个nim游戏 ...
- 关于Git和Github
英文原文:Ten Things You Didn't Know Git And GitHub Could Do Git 和 GitHub 都是非常强大的工具.即使你已经使用他们很长时间,你也很有可能不 ...
- os模块实现遍历文件
使用OS模块中的walk实现文件遍历. walk(top, topdown=True, onerror=None, followlinks=False) 从官方提供的doc中看到有四个参数 1> ...
- CSS自学笔记(9):CSS拓展(二)
CSS图片 当一个网页上有一张或多张图片,而且这些图片的尺寸比较大时,为了是网页布局更紧凑合理,我们可以将这些图片放到一个图片库里,可以有效的防止图片过大可能会对网页布局造成的不良影响. 通过CSS我 ...