Browse Source

Add render process

Fengda HUANG 9 years ago
parent
commit
b4f78402aa
2 changed files with 9 additions and 1 deletions
  1. 9 1
      chapters/1.3.web-basic.md
  2. BIN
      chapters/chapter1/server-dns-forward.jpg

+ 9 - 1
chapters/1.3.web-basic.md

@@ -3,7 +3,7 @@ Web编程基础
 
 ###从浏览器到服务器
 
-如果你的操作系统带有cURL[^cURL]这个软件(在GNU/Linux、Mac OS都自带这个工具,Windows用户可以从[http://curl.haxx.se/download.html](http://curl.haxx.se/download.html)下载到),那么我们可以直接用下面的命令来看这看这个过程[^HTTP2cURL](-v 参数可以显示一次http通信的整个过程):
+如果你的操作系统带有cURL这个软件(在GNU/Linux、Mac OS都自带这个工具,Windows用户可以从[http://curl.haxx.se/download.html](http://curl.haxx.se/download.html)下载到),那么我们可以直接用下面的命令来看这看这个过程(-v 参数可以显示一次http通信的整个过程):
 
 ```
 curl -v https://www.phodal.com
@@ -48,6 +48,14 @@ curl -v https://www.phodal.com
 
 随后以“>”开始的内容,便是向Web服务器发送请求。Host即是我们要访问的主机的域名,GET / 则代表着我们要访问的是根目录,如果我们要访问 [https://www.phodal.com/about/](https://www.phodal.com/about/)页面在这里,便是GET资源文件/about。紧随其后的是HTTP的版本号(HTTP/1.1)。User-Agent通过指向的是使用者行为的软件,通常会加上硬件平台、系统软件、应用软件和用户个人偏好等等的一些信息。Accept则指的是告知服务器发送何种媒体类型。
 
+这个过程,大致如下图所示:
+
+![DNS到服务器的过程](chapters/chapter1/server-dns-forward.jpg)
+
+在图中,我们会发现解析DNS的时候,我们需要先本地DNS服务器查询。如果没有的话,再向根域名服务器查询——这个域名由哪个服务器来解析。直至最后拿到真正的服务器IP才能获取页面。
+
+当我们拿到相应的HTML、JS、CSS后,我们就开始渲染这个页面了。
+
 ####HTTP协议
 
 说到这里,我们不得不说说HTTP协议——超文本传输协议。它也是一个基于文本的传输协议,这就是为什么你在上面看到的都是文本的传输过程。

BIN
chapters/chapter1/server-dns-forward.jpg