美文网首页
week13-网站HTTP协议相关概念

week13-网站HTTP协议相关概念

作者: 刘Huai | 来源:发表于2019-07-23 12:42 被阅读0次

    1. 用户访问网站流程

    • 进行域名解析过程 DNS解析原理
    • 完成三次握手过程 三次握手原理
    • 传输HTTP请求信息 HTTP请求报文信息
    • 通过防火墙到达负载均衡
    • 负载均衡服务器将请求传给web服务器(后台服务器 php/java/python)
    • HTTP响应报文信息
    • 四次挥手,通话结束

    2. HTTP协议报文结构

    HTTP 请求报文【四个部分】(使用curl命令)

    curl命令相当与在系统里打开了一个浏览器,只不过看不到页面 ,所有东西显示的都是字符信息
    curl命令详解
    curl www.baidu.com 
    
    curl请求全部信息.png 请求报文部分
    这一部分是说明,表示访问网站进行的解析信息
    * About to connect() to www.baiud.com port 80 (#0)
    *   Trying 103.231.13.42...
    * Connected to www.baiud.com (103.231.13.42) port 80 (#0)
    

    2.1 请求行内容

    GET / HTTP/1.1

    GET 请求方法 GET 代表获取信息 还有一个 POST 代表提交信息
    / 请求内容,没有指定请求内容的话,就会显示 ' / ' 默认会访问 index.html 首页文件
    HTTP/1.1 代表请求的协议信息 , HTTP 早起有1.0 1.1 2.0 ,用什么协议请求,对端就会用什么协议响应
    HTTP1.1 协议特性
    TCP 短链接特点: 
              A客户端 ---> B 服务端
              01 建立三次握手 
              数据信息 -> 接受 
              02 端口链接 传输数据
              03 一个完整的数据 完成后立即结束会话
              
              (再次重新建立连接)
              01 建立三次握手
              数据信息---> 接受
              02 端口链接 传输数据
              03 一个完整的数据 完成后立即结束会话
    总结:在建立三次握手,传输完一个完整的数据信息之后,立刻断开会话,如果还要传输数据,需要客户端与服务端再次建立三次握手,进行数据传输
    
    TCP 长链接特性
              A客户端---> B 服务端
              01 建立三次握手 
              数据信息 ---> 接受
              02 端口链接 传输数据 (传输完成之后有一个TTL超时时间)
              超时时间30s (期间如果有数据传输,继续传输)
              再次倒计时30s 如果没有数据传输,链接断开
    总结:相对一短链接,在一个完整的数据传输之后,会有一个TTL 超时时间,不会立刻断开连接,不需要客户端与服务端再次建立连接
    

    2.2 请求头

    请求头信息
    > User-Agent: 客户端访问方式: 谷歌  火狐 IE   移动端: Android / ios
      不同的访问方式,显示的页面不同
          京东为例
          移动端访问(m.jd.com)
          客户端访问(jd.com)
    > Host: www.baiud.com   指定显示的网站页面  baidu.com 表示的是域名
    > Accept: */*  客户端接收的一些信息
    

    2.3 空行

    空行

    请求报文到了空行就已经结束因为请求的时候GET方法没有请求主体 POST方法才有

    2.4 请求主体

    HTTP 响应报文【四个部分】

    HTTP响应报文

    2.1 起始行

    HTTP/1.1 200 OK

    HTTP/1.1 协议信息
    200 OK 响应状态码信息

    其他响应状态码


    常见响应状态码.png
    C( client ) S ( server )
    301 永久跳转
            第一次连接
            C       ----->www.oldboy.com             S  
                        客户端访问 www.oldboy.com 
            C       oldboy.com->www.jd.com<-----     S
                        服务器返回让客户端访问www.jd.com
            第二次连接
            C        ----->www.oldboy.com            S  
                            www.jd.com
            第二次访问的时候,浏览器自动会跳转到www.jd.com
    302 临时跳转
            C       ----->www.oldboy.com             S  
                        客户端访问 www.oldboy.com 
            C       oldboy.com->www.jd.com<-----     S
                      服务器返回让客户端访问www.jd.com 
            第二次
            C       ----->www.oldboy.com             S  
                        客户端访问 www.oldboy.com 
            C       oldboy.com->www.jd.com<-----     S
                        服务器返回让客户端访问www.jd.com
    

    总结: 301 与 302 的区别,

    301 永久跳转第二次访问的时候,浏览器会自动跳转到www.jd.com
    而302 临时跳转第二次连接的时候,还需要再次访问服务器,由服务器告知是否需要跳转,跳转到哪里
    两种方式相比较,临时跳转使用的比较多,因为永久跳转,如果跳转的域名发生了变化,永久跳转还会自动
    跳转到存储的跳转地址,这样就会报错,而302 临时跳转则不会出现这样的问题
    出现500 502 503 这几种出现,都需要重点关注,以上出现,对网站影响不大,但是这几个报错,都是服务器发生了错误

    2.2 响应头

    响应头信息
    Server: JDWS/2.0                                什么web程序做出的响应
    Date: Tue, 23 Jul 2019 06:59:57 GMT             当前的GMT时间
    Content-Type: text/html                         响应数据信息类型 图片/文本/音频
    Content-Length: 157                             响应数据大小
    Connection: keep-alive                          会话建立的类型 :长链接,如果没有就是短链接
    Location: https://www.jd.com                    指定跳转后需要访问的地址
    Strict-Transport-Security: max-age=7776000      https特有的,证书有效期
    

    2.3 空行

    空行

    2.4 响应主体

    响应主体

    HTML 代码信息,浏览器会自动解析代码信息

    3. 网站HTTP协议资源信息

    3.1 静态资源

    将网站代码文件信息 图片 视频 音频 附件等信息直接传输给用户

    用户收到信息有浏览器进行解析,显示在浏览器页面上

    优势:便于被搜索引擎收录

    3.2 动态资源

    将网站代码文件信息 由动态程序处理完并且和数据进行交互完 再传输给用户

    用户收到信息有浏览器进行解析,显示在浏览器页面上

    优势:动态调整页面显示信息,减少前端开发工作量
    可以有数据库配合,可以具有网站交互功能 登录 注册 评价 投票 调查

    4. 网站地址的组成

    tieba.baidu.com/index.html

    tieba.baidu.com 域名 url

    /index.html 网站资源部分 uri

    5. 网站的度量方式

    IP 独立IP 数量 用户访问的源IP 数量

    仅供参考

    PV 页面访问量

    仅供参考

    UV 记录用户独立访客数量

    Cookie:网站分配给用户标识信息,保存在用户电脑中
    session: 网站记录每个用户会话信息,保存在网站服务器中

    运维关注网站访客数量,主要是为了知道架构能否承载更多得业务量

    相关文章

      网友评论

          本文标题:week13-网站HTTP协议相关概念

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