从URL输入到显示页面
1. 在浏览器输入URL
URL是Uniform Resource Locator的缩写,统一资源定位符,就是我们浏览器访问网页时需要输入的网址。比如http://baidu.com
URL的格式包括协议、服务器名称、端口号、文件路径。比如http://baidu.com:8080,其中http://表示协议,baidu.com,表示服务器名称,端口号默认都是80,一般不显示。后面还可以添加文件名称/index.html。
http://www.runoob.com/index.html?language=cn#j2se
协议为(protocol):http
主机为(host:port):www.runoob.com
端口号为(port): 80 ,以上URL实例并未指定端口,因为 HTTP 协议默认的端口号为 80。
文件路径为(path):/index.html
请求参数(query):language=cn
定位位置(fragment):j2se,定位到网页中 id 属性为 j2se 的 HTML 元素位置 。
常见的协议还有
-
http:超文本传输协议
-
https:安全的超文本传输协议
-
ftp:文件传输协议
-
file:本地文件夹
-
telnet:telnet协议
2. 域名解析
当在浏览器中输入URL后,浏览器不知道域名baidu.com是什么,需要根据域名解析的IP地址去查找服务器。互联网中每个设备都具有唯一的IP地址,IP地址可以标识设备。
域名解析的过程如下:
1.先去浏览器缓存中查找是否有对应的IP地址;
2.如果浏览器中没有缓存,就到系统缓存中查找,window系统在C:\Windows\System32\drivers\etc下的Hosts文件查找是否有该域名和对应的IP地址;
-
然后再去路由器缓存中查找域名信息;
-
ISP DNS缓存,服务商的DNS服务器也会缓存域名信息
-
最后才会向根域名服务器查找域名对应IP,根域名服务器把请求转发给下一级,直到找到IP地址。
3. 服务器处理
域名解析成IP地址后,根据IP地址找到服务器,向服务器发送请求。服务器是一个大型处理数据的计算机,常见的服务器系统有Linux。Linux系统中安装的处理请求的软件叫Web服务器,常见的Web服务器有Apache、Nginx、IIS。Web服务器的作用:接受客户端的请求,对请求做出处理后返回信息给客户端。
4.网站处理流程
Web服务器对请求信息作出处理的流程如下
![](https://img.haomeiwen.com/i13812131/80ad2e2f2947fd36.png)
服务器接收到请求后,处理流程通过MVM框架实现:服务器根据文件路径通过路由进行一个匹配交给控制器,控制器会把具体要操作的任务交给模型处理,比如操作数据库,控制器通过模型提供的接口调用得到数据,再把数据交给视图模块,生成HTML交给控制器返回给浏览器。
5.浏览器显示页面
浏览器解析HTML标签,根据HTML和CSS绘制成页面,执行js。
网友评论