DNS预解析
DNS 实现域名到 IP 的映射。通过域名访问站点,每次请求都要做 DNS 解析。每次 DNS 解析,通常在200ms以下。针对DNS解析耗时问题,一些浏览器通过 DNS Prefetch 来提高访问的流畅性。
DNS Prefetch 是一种 DNS 预解析技术,当浏览网页时,浏览器会在加载网页时对网页中的域名进行解析缓存,这样在单击当前网页中的连接时就无需进行 DNS 的解析,减少用户等待时间,提高用户体验。
如果要控制浏览器端是否对域名进行预解析,可以通过 Http header 的 x-dns-prefetch-control 属性进行控制。
<meta http-equiv="x-dns-prefetch-control" content="on" /> // 允许域名预解析
<meta http-equiv="x-dns-prefetch-control" content="off" /> // 不允许域名预解析
一个页面允许预解析多个链接
<link rel="dns-prefetch" href="http://bdimg.share.baidu.com" />
<link rel="dns-prefetch" href="http://nsclick.baidu.com" />
<link rel="dns-prefetch" href="http://hm.baidu.com" />
这样在单击当前网页中的连接时就无需进行DNS的解析,减少用户等待时间,提高用户体验。