http协议
(1)http和https的区别:
<1>http的url是http://开头,而https的url是https://
<2>http是不安全的,https是安全的。
<3>http的标准端口是80,而https的标准端口是443
<4>http工作在应用层,https的安全传输机制工作在传输层。
(2)为什么http协议是无状态协议?怎么解决http协议无状态协议?
无状态协议对事物处理没有记忆能力。缺少状态意味着后续处理需要前面的信息。
**也就是,当客户端一次http请求完成后,客户端再发送一次http请求,http并不知道当前客户端是老客户。
解决方法:使用cookie,第一次访问的时候给客户端发送一个Cookie,当客户再次来的时候,拿着cookie(通行证),那服务器就知道这是个“老用户”。
(3)http方法:
GET:用于请求访问已经被url识别的资源,向服务器请求数据。
POST:用于传输信息给服务器,修改数据。
PUT:传输文件,增加数据。
HEAD:获取报文首部。
DELETE:删除数据。
OPTION:查询对应URl支持的http方法。
(4)一次完成的http请求经历的7个步骤:
<1>建立TCP连接
<2>浏览器发送请求行,发送http请求命令(get,post,...)。
<3>浏览器发送请求头。
<4>服务器发送状态行。
<5>服务器发送响应头
<6>服务器向浏览器发送数据
<7>服务器关闭关闭TCP连接。
(5)http相应的状态码:
200:请求被正常处理
204:请求被受理但没有资源可以返回
206:客户端只是请求资源的一部分,服务器只对请求的部分资源执行GET方法,相应报文中通过 Content-Range指定范围的资源。
301:永久性重定向
302:临时重定向
303:与302状态码有相似功能,只是它希望客户端在请求一个URI的时候,能通过GET方法重定向到 另一个URI上
304:发送附带条件的请求时,条件不满足时返回,与重定向无关
307:临时重定向,与302类似,只是强制要求使用POST方法
400:请求报文语法有误,服务器无法识别
401:请求需要认证
403:请求的对应资源禁止被访问
404:服务器无法找到对应资源
500:服务器内部错误
503:服务器正忙
(6)http的优化:
<1>TCP复用:TCP连接复用是将多个客户端的HTTP请求复用到一个服务器端TCP连接上,而HTTP复用 则是一个客户端的多个HTTP请求通过一个TCP连接进行处理。前者是负载均衡设备的独特功能;而后者是HTTP 1.1协议所支持的新功能,目前被大多数浏览器所支持。
<2>内容缓存:将经常用到的内容进行缓存起来,那么客户端就可以直接在内存中获取相应的数据了
<3>压缩:将文本数据进行压缩,减少带宽
<4>SSL加速(SSL Acceleration):使用SSL协议对HTTP协议进行加密,在通道内加密并加速
<5>TCP缓冲:通过采用TCP缓冲技术,可以提高服务器端响应时间和处理效率,减少由于通信链路问题给服务器造成的连接负担。

浙公网安备 33010602011771号