浏览器如何工作?

吃饱没事,随便翻译一篇文章。

现在的浏览器可以做很多事,如chrome可以运行多种应用插件。但我觉得你可能对如何加载展示网页感兴趣。

网络是c/s架构的。浏览器仅仅是其中的一半(客户端)。另一半是等待客户端发请求的服务器。

首先,浏览器要找到web服务器的地址。它问操作系统服务器的名字;操作系统便查找本地缓存,如果找不到,就询问DNS服务器。

得到IP地址后,浏览器便向服务器发送HTTP请求,请求需要的文档(网页)。如果没有指定文档,服务器便返回默认的文档(index.html,index.php,index.asp或是任何其它服务器中存在的文件)。通常,文件可以是HTML形式的文本。但是也可以是其它种类的文档。

得到需要的文档后,浏览器要做两件事:解析渲染HTML页面,请求其它对象(图片,flash文件,js文件,css文件,音频,视频等)并解析展示它们。

一些浏览器在渲染解析HTML文档时会同时快速请求其它对象,并像收到这些对象似的填充它们。另外一些浏览器会等收到所有对象后才开始渲染展示HTML文档。

大概就是这样。做完上述步骤后浏览器就“安心”等待用户请求其它文件,然后重复做上述事情。