HTTP简介
超文本传输协议(HTTP:Hypertext Transport Protocol)是万维网应用层的协议,它通过两个程序实现:一个是客户端程序(各种浏览器),另一个是服务器 (常称Web服务器)。这两个通常运行在不同的主机上,通过交换报文来完成网页请求和响应。
报文简介
报文是一个数据块,包括要传送的数据,也包括必要的附加信息,像目的IP、目的端口、源地址、源端口、数据长度、所用协议、加密等,它定义了报文的结构和客户与服务器之间交换报文的规则。
报文可简单分为:请求报文(Request Message)与响应报文(Response Message)。
报文的组成部分分别为:(1)起始行(Start Line);(2)首部(Header);(3)主体(Body)。
HTTP工作流程
客户机与服务器建立连接后,浏览器可以向web服务器发送请求并显示收到的网页,当用户在浏览器地址栏中输入一个URL或点击一个超连接时,浏览器就向服务器发出了HTTP请求,请求方式的格式为:统一资源标识符、协议版本号,后边是MIME(Multipurpose Internet Mail Extensions)信息包括请求修饰符、客户机信息和可能的内容。该请求被送往由URL指定的WEB服务器,WEB服务器接收到请求后,进行相应反映,其格式为:一个状态行包括信息的协议版本号、一个成功或错误的代码,后边服务器信息、实体信息和可能的内容。即以HTTP规定的格式送回所要求的文件或其他相关信息,再由用户计算机上的浏览器负责解释和显示。
在HTTP协议中,由于WEB服务器在发送用户要求的文档过程中,并不储存任何有关客户端的状态信息。如果某个客户端在几秒钟内两次要求同一文档,服务器绝对不会认为不合理,它不记得用户端曾经来访过,HTTP不维持客户端状态。
在Internet上,HTTP通讯通常发生在TCP/IP连接之上。缺省端口是TCP80,当然还有其它端口可供使用。
原文地址:https://www.cnblogs.com/WLYW/p/10519134.html