美文网首页
HTTP协议-HTTP\1扩展三

HTTP协议-HTTP\1扩展三

作者: Wu杰语 | 来源:发表于2019-09-20 19:09 被阅读0次

序言

这是HTTP\1扩展的小短文的最后一篇了,HTTP的缓存控制和代理,实际上HTTP的扩展还有很多,这里介绍的都是在工程上的主要使用。

HTTP扩展

HTTP缓存控制

为何说是HTTP缓存控制而不是HTTP缓存,这是因为HTTP本身没有缓存功能,所以只是在HTTP协议中扩充了缓存字段,让浏览器和服务端按照缓存控制字段处理是否需要缓存。

  • 服务器端使用Cache-Control, 例如Cache-Control: max-age=30,就是说服务器端发出报文到客户端智能保留30秒。浏览器是怎么处理的呢,浏览器收到缓存条件就把数据缓存起来,如果没有过期就可以直接使用,过期就要去服务器验证是否仍然可用。
  • 浏览器怎样验证呢?有两个步骤:
    • 在第一次缓存的时候浏览器收到的服务器报文中,有Last-Modified和ETag两个字段。
    • 浏览器接下来的处理中,会先下发HEAD请求,报文带上if-Modified-Since和if-None-Match两个字段以及上面Last-Modified和ETag两个字段, 交给服务器验证,服务器验证后如果返回304 Not Modified,就说明缓存依然有效,浏览器就可以继续使用缓存。
代理

代理是HTTP比较常见的应用,最常用的代理应用是负载均衡。通过设置代理,可以做如下事情:

  • 代理服务器可以对服务器做管理,建立心跳,如果服务器已经异常,则端口服务器连接,保证服务高可用性。
  • 黑名单,可以在代理服务器上设置黑名单,保证服务器高可用。
  • 缓存,如ngix,可以用来作为缓存静态数据,如果发现是静态数据,就直接从代理服务器返回。

由于中间存在代理,服务器和客户端之间就不能互相知道IP,而服务器的IP一般按照安全原则是不暴漏给客户端的,但是服务器确有必要知道客户端的IP地址,这时有两个字段 X-Forwarded-Host和X-Real-IP只记录客户端的信息。

小结

关于HTTP/1的主要扩展使用了三篇小短文,分别是承载内容、长连接、cookie、重定向、缓存、代理

相关文章

  • HTTP协议-HTTP\1扩展三

    序言 这是HTTP\1扩展的小短文的最后一篇了,HTTP的缓存控制和代理,实际上HTTP的扩展还有很多,这里介绍的...

  • HTTP协议-HTTP\1扩展一

    序言 HTTP \1协议是一个可扩展的协议,而在真是的网络世界中,HTTP做了哪些扩展从而达到商用的级别呢? HT...

  • HTTP协议-HTTP\1扩展二

    序言 HTTP \1协议是一个可扩展的协议,而在真是的网络世界中,HTTP做了哪些扩展从而达到商用的级别呢?本文是...

  • 网络

    1 HTTP协议1.1请求报文1.2 响应报文1.3 http的请求方式有哪些1.4 HTTP扩展方法1.5 GE...

  • HTTP(二)

    HTTP 特点 1 HTTP 是灵活可扩展的,可以任意添加头字段实现任意功能; 2. HTTP 是可靠传输协议,基...

  • HTTP协议-HTTP\1定义

    序言 今天这篇小文,我们从HTTP协议本身和浏览器发送一个HTTP请求两个角度来学习一下HTTP\1协议。 HTT...

  • 第六个模块 HTTP协议、Restful

    HTTP协议 · HTTP协议 · 工作原理 HTTP协议请求 HTTP协议响应 HTTP协议消息报头 1、普通报...

  • 1、HTTP协议

    (原话)谈谈对HTTP协议的理解:超文本传输协议,应用于OSI网络模型中的应用层,是用于服务器传输超文本到本地浏览...

  • HTTP协议(1)

    概述 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维...

  • HTTP协议(三)

    接下来介绍第三部分: HTTP协议的扩展,不足及HTTPS 一.与HTTP协作的WEB服务器 用单台虚拟主机实现多...

网友评论

      本文标题:HTTP协议-HTTP\1扩展三

      本文链接:https://www.haomeiwen.com/subject/rzyjuctx.html