标签:web服务器 internet 个人总结 浏览器 request
http遵循request/response模型
基本流程:web浏览器向web服务器发送请求,web服务器处理请求并回应web浏览器
具体步骤:
1、建立tcp连接
web浏览器通过网络(internet又称TCP/IP网络)和web服务器建立连接,
低层的协议建立之后才能进行更高层协议(HTTP是比TCP更高层的应用层协议)
一般的TCP端口为80
2、web浏览器向web服务器发送请求命令
3、web浏览器发送头信息
以头信息的形式向web服务器发送别的信息,之后发送一空白行,通知服务器结束该头文件的发送
4、web服务器回应
如:HTTP/1.1 200 ok
HTTP/1.1是协议的版本号 200是应答状态码
5、web服务器发送应答头信息
服务器随同应答向用户发送关于它自己的数据几被请求文档
6、web服务器想浏览器发送数据
发送头信息它会发送一个空白行来表示头信息发送到此结束
7、关闭TCP连接
web服务器向web浏览器发送了就要关闭
如果加入connection:keep-aliveTCP将仍保持打开状态,保持连接状态能够节省时间和网络带宽
请求信息3部分:
请求方法/URL协议/版本
请求头
请求正文
例子:
下面是一个HTTP请求的例子:
GET/sample.jspHTTP/1.1 (1)
Accept:image/gif.image/jpeg,*/*
Accept-Language:zh-cn
Connection:Keep-Alive
Host:localhost
User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate (2)
/* 表示结束的空白行 */
username=jinqiao&password=1234 (3)
总结:
.客户端完整的发送一个请求(请求头+请求体)服务器收到这个信息并处理完成后返回一个响应包HTTP应答,然后连接关闭;
客户端发送请求是一次把请求行和请求体全部发出;
浏览器回根据你在地址栏里输入的url进行DNS解析;
服务器使用常见apache+tomato进行处理,apache用来接收HTTP应答,然后请求给tomato进行处理;
建立TCP连接是在地址栏输入完地址敲下回车后,浏览器有一个DNS解析过程,将域名转成IP然后浏览器根据IP加上默认的80端口建立好TCP连接;
HTTP请求的信息头 \r\n和包体都是一起发送的。
标签:web服务器 internet 个人总结 浏览器 request
原文地址:http://11601713.blog.51cto.com/11591713/1812421