4.3.1 HTTP概述

4.3.1 HTTP概述

HTTP是Web客户与服务器交互时遵循的应用层协议,它是万维网上能够可靠交换文件的重要基础,也是Web的核心。HTTP协议定义了Web客户如何向Web服务器请求Web页面、服务器如何将Web页面传送给客户以及这些交互报文的格式。1997年以前使用的是RFC1945定义的HTTP/1.0协议,1998年这个协议升级为HTTP/1.1。HTTP协议由客户程序和服务器程序两部分实现,它们运行在不同的端系统中,通过交换HTTP报文进行会话。

HTTP中Web客户与Web服务器之间按照请求-响应的交互模式进行工作,其过程如下:Web服务器都有一个服务器进程,不断地监听80端口。当它发现有浏览器向它发出连接请求时,就会建立TCP连接。之后,浏览器就向Web服务器发出某个页面的请求,然后服务器返回所请求的页面作为响应。最后,TCP连接释放,如图4-3所示。

图4-3 HTTP协议的工作过程

假定图4-3中的用户用鼠标点击了屏幕上的一个链接。该链接指向的页面,其URL是http://www.abc.com/home/index.html。下面列出了这个链接被选中时发生的几个事件。

①浏览器确定链接指向页面的URL;

②浏览器向DNS询问www.abc.com的IP地址;

③DNS回复该服务器的IP地址为x.y.z.n;

④浏览器与x.y.z.n上80端口建立TCP连接;

⑤浏览器发出一个请求,要获取文件/home/index.html;

⑥服务器给出响应,把文件/home/index.html发送给浏览器;

⑦TCP连接被释放;

⑧浏览器显示/home/index.html中的所有文本。