聊聊HTTP协议及HTTPS

目录

  • 一.什么是HTTP协议
    • 1.概念
    • 2.格式
      • 1)请求的格式
      • 2)响应的格式
    • 3.HTTP协议的防盗链
    • 4.HTTP的长短链接
  • 二.HTTP的缓存
    • 1.图片的缓存
    • 2.缓存服务器和主服务器的缓存
  • 三.HTTP协议与内容压缩
  • 四.聊一聊POST请求的几种传参方式
  • 五.HTTPS协议

一.什么是HTTP协议

1.概念

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

2.格式

1)请求的格式

请求:请求行(request line)、请求头部(header)、空行和请求数据四个部分组成。

请求行的内容包括请求方法 目录 协议类型
请求方法又分为 GET POST HEAD PUT DELETE TRACE OPTION
GET和HEAD基本一致,只是不返回数据
注意:这些方法虽然是HTTP协议中的,但是WEB服务器未必让你用
请求协议有0.9 1.0和1.1

2)响应的格式

响应:状态行、消息报头、空行和响应正文。

响应行包括协议 状态码 状态文字

状态码 :反应服务器的状态的
1xx 接收到请求,继续处理
2xx 表示成功
3xx 表示重定向
4xx 客户端错误,请求的语法有错误或不能完全满足
5xx 服务器内部错误

常见的状态码
200 表示ok
301/2 永久或临时重定向
304表示服务端未修改,减轻服务端压力
404请求的网页不存在
503 服务器暂不可用

注意点:重定向时的POST数据会出现数据丢失,可以用307重定向

3.HTTP协议的防盗链

当我们在页面中引用站外图片时,别人会通过请求头中的Refere:表示网页来源即上一页地址来做防盗链。
防盗链的方法:1.在web层面上获取header信息,重定向到一个默认图片上;
2,打开appache重写mod_rewrite,在需要防盗链的目录或网站,写htaccess文件,并制定防盗链规则。

4.HTTP的长短链接

Http的长连接实际说的是tcp的长连接,在1.0中都是短连接,在1.1使用的长连接,在响应头是有个Connection:keep-alive上设置,一般在服务器文件中配置,同时需要客户端支持。

二.HTTP的缓存

1.图片的缓存

我们在第一次请求时会下载 返回200 ok ,第二次会返回304 Not Modify未修改状态
如果理解:在图片不经常改动时,第一次请求下载返回200的同时,响应头中会返回一个ETAG,和LastModifed 当浏览器再次去请求时,会在请求头中携带IF-Modifyed-Since 和if-None-match(上次的ETG)这个时候,回去匹配这两个值,如果不匹配才会去重新下载,不然就返回304,表示浏览器从本地取,节省传输时间。

2.缓存服务器和主服务器的缓存

1.要不要缓存?
2.缓存时间?

使用cache-control来控制,在主服务的expire扩展,来控制图片,css,html.js,来决定是否缓存和缓存周期
从而减轻了主服务器的负担。

三.HTTP协议与内容压缩

服务器上将页面数据压缩,浏览器解压缩之后渲染,从而加快传输效率,一般是压缩文本格式的文件,不对视频,图片进行压缩。压缩的前提,是浏览器支持解压缩,在请求头上一般会带有支持的Accept-Encoding与服务器协商压缩的类型。

四.聊一聊POST请求的几种传参方式

四种常见的Post传参方式

五.HTTPS协议

HTTPS请求是一种安全的协议,由于HTTP使用明文传输,从而才有了HTTPS,HTTPS的核心原理,就是使用非对称加密来传输秘钥,使用对称加密传输数据,从而使得文件传输变的更安全。

你可能感兴趣的:(学习札记)