描述一个网页从开始请求到最终显示的完整过程?
随着互联网技术的发展,浏览器已成为网民们获得优质服务与信息的重要工具。当我们连接上网络,打开浏览器,输入网址,空白的页面瞬间会出现各式各样的信息,比如一个搜索网页、挤满文字的门户网站或由图片、文字等整齐排版的网站。那么,从我打开浏览器到我们看到想要的东西展示在网页上这一过程中,究竟时发生了什么呢?
一个网页从开始请求到最终的显示一般可以分为7个步骤:
(1)在浏览器中输入网址;
(2)发送至DNS服务器并获得域名对应的web服务器的IP地址;
(3)与web服务器建立起TCP连接;
(4)浏览器向服务器的IP地址发送相应的http请求;
(5)web服务器响应请求并返回指定URL的数据,或错误信息,如果设定重定向,则重定向到新的 URL地址;
(6)浏览器下载数据后解析HTML源文件,解析的过程中实现对页面的排版,解析完后在浏览器中显 示基础页面;
(7)分析页面中的超链接并显示在当前页面,重复以上过程直至无超链接需要发送,完成全部显示
我们该如何理解以上 的过程呢?
我们可以从三个方面理解这一过程:浏览器、服务器、浏览器与服务器之间的通讯协议。这三者之间又是通过web(万维网/www/w3/world wide web)来连接的。
(1)什么是web?
web分为web客户端与web服务器程序,web可以让web客户端(常用的浏览器)访问web服务器端的页面。是一个由许多互相链接的超文本组成的系统,通过互联网访问。在这个系统中,每个有用的事物,称为一样“资源”;并且由一个全局“统一资源标识符”(URI)标识;这些资源通过超文本传输协议(Hypertext Transfer Protocol)传送给用户,而后者通过点击链接来获得资源。
支持web的技术,首先是底层的网络,因为web就是建立在Internet之上,web的基本协议是HTTP协议,它跑在TCP上的协议之上,而TCP协议又需要IP协议的支持,IP协议又要由底层链路来支撑,所以我们可以从高到低看到这样一个协议栈 http->tcp->ip->连路层协议。要理解web到ip就已经足够了。