首页 > 代码库 > HTTP服务器

HTTP服务器

一、HTTP协议的简单介绍

HTTP是Web协议集中的重要协议, 它是从客户机/服务器模型发展起来的。客户机/服务器是运行一对相互通信的程序,客户与服务器链接时,首先要向服务器发送请求, 服务器根据客户的请求, 完成处理并给出响应。浏览器就是与Web服务器产生链接的客户端程序, 它的端口为TCP的80端口。浏览器与Web服务器之间所遵循的协议就是HTTP

二、HTTP发展史

HTTP的早期版本为HTTP/0.9, 它适用于各种数据信息的简洁快速协议, 但是其远不能满足日益发展的各种应用的需要。但是HTTP/0.9作为HTTP协议具有典型的无状态性:每个事务都是单独进行处理的,当一个事务开始,就在客户与服务器之间建立一个链接,当事务结束时,就释放这个链接。HTTP/0.9包含Simple-Request&Simple-Respond的报文结构。但是客户无法使用内容协商,所以服务器无法返回实体的媒体类型

1982年, Tim Berners-Lee提出了HTTP/1.0,在此后的不断丰富和发胀中,HTTP/1.0成为最重要的面向事务的应用层协议。该协议对没一次请求/响应,建立并拆除一次链接。其特点是简单、易于管理,所以它符合了大家的需要, 得到了广泛的应用。其缺点是仍会发生下列问题:对于用户请求响应慢、网路拥塞严重、安全性等。

1997年形成的HTTP/1.1, 也就是现在普遍使用的协议, 在持续链接操作机制中实现了流水方式(即客户端需要对同一个服务器发出多个请求,其实现在多数的网页都是有多部分组成的(比如多张图片)),流水机制就是指连续发出多个请求并等到这些请求发送完毕,这样就大大节省了单独请求及对响应的等待时间,使的我们得到更快速的浏览,因此可以采用流水线方式加快速度;另外, HTTP/1.1服务器端处理请求时按照收到的顺序进行,这样就保证了传输的正确性。当然,服务器在发生连接中断时,会自动的重传请求,保证数据的完整性; HTTP/1.1 还提供了身份认证、状态管理和Cache缓存禁止。这里我想特别提一下关于HTTP/1.1中的Cache缓存机制对HTTP/1.0的不足之处的改进,它严格全面,既可以减少时间延迟,有节省了带宽,HTTP/1.1采用了内容协商机制,会选择最合适的用户的内容表现形式, 很多地方都有用到的虚拟主机技术爱HTTP/1.1中也可以实现。小结:HHTT/1.1是interne现行的标准协议

三、HTTP/1.1的请求方法介绍

请求方法:是请求一定色Web页面的程序或用于特点的URL
GET:请求制定的页面信息,并翻火实体主题
HEAD:只请求页面的头部
POST:请求服务器所接受指定的文档作为地所表示的URI的心的从属实体
PUT:从客户端向服务器传送的数据取代指定的文档内容
DELETE:请求服务器删除指定的页面
OPTIONS:允许客户端查看服务器的性能
TRACE:请求服务器在响应中的实体主体部分返回所得到的内容
PATCH:实体中包含了一个标,表中说明与该URI所表示的原内容的区别
MOVE:请求服务器将指定的页面一知道另一个网络地址
COPY:请求服务器将指定的页面拷贝至另一个网络地址
LINK:请求服务器建立链接关系
UNLINK:断开链接关系
WRAPPED:允许客户端发送经过伪装阿请求
Extension-method:在不改动协议的前提先,可以增加另外的方法
    例如:
    GET /index.html HTTP/1.1
    Accept: text/plain /*纯ASCII码文本文件/
    Accept: text/html /*HTML文本文件*/
    User-Agent:Mozilla/4.5(WinNT)

HTTP服务器