从URL到页面显示经历了哪些?
什么是URL?
URL,是指同一的资源定位符,用于定位网络资源,俗称网址。
对应协议,端口号,域名等。
例如,http://www.baidu.com
这就是一个url地址,就是一个网址,它是由http协议传输。
对应常用的传输协议如下’
- http,是指去查找网络上的某个资源。
- file,是用于定位本地文件的协议,也就是说用于查找本地资源。
- https,是指一个加密后的安全的http协议。
这就是URL,也就是网络查找资源的第一步,输入网址。
DNS解析?
是指浏览器根据输入的URL/字符串/资源,查找该字符串对应的域名,在根据这个域名去查找对应的IP地址。
- 域名?
就是指由数字,拼音等组成的协意字符串,比如,baidu.com,这就是百度的域名。 - IP地址?
这个大家都懂得把,就是每台设备想要上网的话都要有这么一排数字,比如,192.168.0.1 - 技术点!
如果做手机测试时,在电脑上测试开发程序没有问题,但是在手机上如何做测试呢?
用手机与电脑连接到同一个wifi下,再通过手机访问电脑上的IP地址就可以啦!
解析流程‘
- 浏览器缓存
当之前通过该浏览器访问过该IP的话,则首先在浏览器缓存区,也就是记忆区进行查找,如果找到了就返回出结果。 - 系统缓存
如果该浏览器中没有该记录的话,那么就要回到本地的HOST文件夹中查找。
HOST缓存作用
是指根据域名查到对应IP的查找过程。
技术点
HOST缓存区可以将将服务器网址定位到本地的IP
例如,在开发过程中,如果想通过浏览器访问一个服务器网址,但又不希望直接访问到服务器?
那么就可以根据HOST文件中定义的域名对应的本地网址,在通过该域名查找时,便可以直接跳转到HOST文件中定义的网址。比如,本地IP,172.0.1.2 域名,wanyy.com 当输入该域名时,可以调转到172.0.1.2这个IP的地址。
路由器缓存区
如果HOST缓存区中还是没有出现过这个域名的话,那就到下一级继续查找。IPS路由器缓存区
仍然没找到的话,就会去找你用的服务商缓存区中去再查找,比如电信。-
根目录查找
如果怎么都没找到的话就是到最后一阶段,去根目录查找,在根据根目录返回值继续查找,直到找到一个最终IP为止。
关联问题
- 如果电脑不能上网了,直接将dns改为8.8.8.8或114.114.114.114就可以上网了。
原因,就是不通过本地中间查找,直接将最终服务器的ip给dns就直接指定了找到了这个网址了。 - DNS劫持
是指网络黑客攻击某个节点服务器,并将一个虚拟网站的IP返还给对应的域名,也就是说在查找网页的胖有回根据该域名查找到一个假的网页。
这就是第二阶段,根据域名找对应IP地址。
服务器处理
web服务器
是一台安装系统的机器,并安装了接受请求的软件,比如windows下通常会安装web server,也就是一个管理的请求的入口。
- 常见的web服务器有Apache,Nginx,IIs等
-
web服务器接受用过的请求并交给网站代码,或者接受请求反向代理到其他到其他服务器。
例如,
一台机器里有苹果,鸡蛋,牛奶,这台机器只有个IP地址,127.1.0.1,那么通过浏览器找苹果的时候,
首先找到的是127.1.0.1的这个IP,这个IP对应了同一机器,这个时候就需要一个管理的,比如Nginx,
这个软件下会有一个配置文件,相当于分配单,Nignx会根据你发来的请求,将你的需求返回给你苹果或者牛奶或者鸡蛋。
这就是第三阶段,根据IP通过web服务器来返还结果。
网站处理流程
是指M>V>C处理过程。
首先,根据上一步终于找到了一个网站,结果这个网站是一堆看不懂的代码,那么怎么才能显示成好看的页面呢?
这就是M模型>V视图>C控制器的处理过程。
M,这些代码经过运行后会交给控制器,就是操作数据库的过程。同时它给控制器提供了一些接口。
V,根据接口控制器做处理后,会从模型文件中查找到指定的文件,在返还给控制器。
C,拿到结果的控制器会放到一个视图模板中,并将视图在还给页面,于是我们看到的最终结果是视图页面。
这就是最后一步,显示画面的过程,也就是我们根据一堆字符串得到一个好看页面的过程。