zoukankan      html  css  js  c++  java
  • 在浏览器地址栏输入URL,按下回车后究竟发生了什么?

    1.DNS

    在浏览器中输入URL后,首先要进行DNS解析,DNS解析的顺序为:

    • 浏览器缓存
    • 本地hosts文件
    • 系统缓存
    • 路由器缓存
    • DNS服务器迭代查询

    2.发送请求

    通过DNS得到目标的IP地址后,通过TCP协议向服务器发送请求即三次握手。

    3.服务器永久重定向响应

    大多数的网站会将用户访问的地址永久重定向,这主要与缓存和搜索排名有关。

    • 搜索排名方面:例如www.test.com与test.com搜索引擎认为是两个网站,不会将排名合并。如果使用重定向将test.com定向到www.test.com搜索引擎就会认为是一个页面将排名信息合并。
    • 缓存方面:如果使用不同的地址,在缓存中出现好几次,缓存友好性变差

    4.跟踪重定向地址

    根据返回新重定向地址,重新发送新的http请求

    5.处理HTTP请求,返回响应

    • 建立连接:服务器允许客户端建立连接
    • 接受请求:从网络中读取HTTP报文交给Nginx或者Apache进行规则匹配
    • 处理请求:根据方法,资源,首部和可选的主体部分对请求进行处理
    • 访问资源:寻找存储对象,访问报文中指定的资源
    • 构建响应报文:创建有正确首部的HTTP响应报文

    6.处理HTTP响应

    • 发送响应:将响应会送给客户端
    • 记录日志:将与已经完成的事务记录在一个日志文件中

    7.浏览器解析显示

    浏览器得到页面后会进行展示,如果还包含其他外部资源如图片、视频等等则继续请求其他资源。

  • 相关阅读:
    kerberos系列之zookeeper的认证配置
    kafka概念扫盲
    linux不常用命令
    linux环境安装pip
    Hbase概念原理扫盲
    python语言中三个奇妙的返回值
    python通过http(multipart/form-data)上传文件的方法
    tp5.1 模型设置了软删除,detach 不能删除中间表的问题
    tp5.1 where in 写法
    tp 5.1 使用模型查询结果集插入另一个模型的问题
  • 原文地址:https://www.cnblogs.com/aubin/p/7641100.html
Copyright © 2011-2022 走看看