• 用户访问网站流程


    用户访问网站流程

    1. 首先dns对域名进行解析
    2. 客户端和解析得到的IP地址进行三次握手,建立tcp连接
    3. 客户端向网站服务器发送http请求报文 
       包含  请求方法 请求行 请求头 空行 请求主体[get方法中没有请求主体,post方法中会有请求主体]
    4. 网站服务器向客户端发送http响应报文
       包含 起始行  响应头 空行 响应主体
    5. 全部数据传输完毕后,进行四次挥手过程结束整个请求流程  
    
    curl -v 可以看到请求过程
    
    [root@k8s-node2 ~]# curl  -v www.a.com
    * About to connect() to www.a.com port 80 (#0)        # 1. 首先dns对域名进行解析
    *   Trying 10.0.0.65...
    * Connected to www.a.com (10.0.0.65) port 80 (#0)     # 2. 客户端和解析得到的IP地址进行三次握手
    > GET / HTTP/1.1                                      # 3. 客户端向网站服务器发送http请求报文 
    > User-Agent: curl/7.29.0                             #    请求方法
    > Host: www.a.com
    > Accept: */*
    >                                                     #  4. 空行
    < HTTP/1.1 200 OK                                     #  5. 响应主体
    < Server: nginx/1.16.1                                # 服务软件信息
    < Date: Tue, 04 Aug 2020 13:05:40 GMT                 # 响应时间
    < Content-Type: text/html                             # 请求数据类型
    < Content-Length: 10                                  # 请求的内容长度 Content-Length 10
    < Last-Modified: Sun, 02 Aug 2020 06:22:56 GMT        #  由服务器往客户端发送的 HTTP 头 记录页面最后修改时间
    < Connection: keep-alive                              #  保持长连接
    < ETag: "5f265bc0-a"                                  #  ETag是一个可以与Web资源关联的记号(token)
    < Accept-Ranges: bytes                                #  表示该服务器可以接受范围请求
    <                                                     #  空行
    10.0.0.65                                             #  6. 响应内容
    * Connection #0 to host www.a.com left intact         #  标记处理完成
    
    
  • 相关阅读:
    配置文件管理
    Nacos学习
    dockerCompose学习
    Dockerfile
    vue生命周期
    github使用
    推荐系统
    js笔记17
    js笔记16
    js笔记15
  • 原文地址:https://www.cnblogs.com/superlinux/p/13436153.html
Copyright © 2020-2023  润新知