美文网首页
从url输入到展示

从url输入到展示

作者: ssuzj | 来源:发表于2019-01-11 16:53 被阅读0次

    url是什么

    url(uniform resource location):统一资源定位符,用于定位互联网上的资源

    常用协议

    http、https、ftp、file(本地)
    //表示本链接是与本页所用协议相同

    输入后第二步 域名解析

    对于http://jirenhu.com的url,浏览器实际上不知道jirengu.com到底是什么东西,需要查找jirengu.com网站所在服务器的IP地址,才能找到目标

    为什么要发明域名,而不直接用IP?

    太麻烦记不住,方便记忆

    域名解析流程

    1. 浏览器缓存 - 浏览器会缓存DNS记录一段时间
    2. 系统缓存 - 从Hosts文件中查找是否有该域名对应的IP地址
    3. 路由器缓存 - 一般路由器也会缓存域名信息
    4. ISP DNS缓存 - 比如到电信的DNS上查找缓存
    5. 如果都没查到,则向根域名服务器查找域名对于IP,根域名服务器把请求转发到下一级,直到找到IP

    在这里有必要说一下以下俩个问题:

    1. 电脑上不了网,为什么要把域名改为8.8.8.8或者114.114.114.114?

    8.8.8.8实际上是Google提供的服务器,114是国内的服务商,如果将DNS改为谷歌的他就不会从ISP什么的往下找了,他就直接去谷歌的服务器里去找了

    2. DNS劫持是什么?

    比如黑客攻击了某个节点,把某个根域名服务器攻击了,他管理着国内外成千上万个IP地址,比如你查找的是baidu.com,本来对应的是baidu.com的IP,现在给你一个他自己的IP,这个时候你打开的baidu.com的网站其实是一个假的网站

    第三步,服务器处理

    服务器是一台安装系统的机器,常见的Linux,Window Server 2012,系统里安装处理请求的应用叫做Web Server
    常见的Web服务器有Apache、Nginx、IIS、Lightted
    Web服务器接收用户的Request交给网站代码,或者接受请求反向代理到其他Web服务器
    其实他就是个入口,不同的域名可以解析到相同的IP地址,这个IP地址下的服务器可以管控多个项目,只要通过编写配置文件让不同的请求交给不同代码就可以了。

    第四步,网站处理流程

    以MVC的架构的项目为例,通过路由发发送请求到服务器提交给控制器,控制器向模型向数据库组织数据返回给控制器,再由控制器把数据交给视图组织页面,把塞好数据的视图由控制器返回给用户,就得到了平时所看到的页面


    image.png

    第五步,浏览器处理

    Html字符串被浏览器接收后被一句句读取解析

    • 解析到link标签后重新发送请求获取css
    • 解析到script标签后发送请求获取js,并执行代码
    • 解析到img标签后发送请求获取图片

    绘制网页:浏览器根据Html和CSS计算得到渲染树,绘制到屏幕上js会执行

    相关文章

      网友评论

          本文标题:从url输入到展示

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