DNS预获取(dns-prefetch)

涨姿势了~~

今天翻看twitter的源码的时候看到了一下内容:

<link rel=”dns-prefetch” href=”http://a0.twimg.com”/>

<link rel=”dns-prefetch” href=”http://a1.twimg.com”/>

<link rel=”dns-prefetch” href=”http://a2.twimg.com”/>

<link rel=”dns-prefetch” href=”http://a3.twimg.com”/>

<link rel=”dns-prefetch” href=”http://api.twitter.com”/>


查阅了相关资料,知道DNS Prefetch也就是DNS预获取,也是前段优化的一部分。在前段优化中关于DNS的有两点:一是减少DNS的请求次数,第二个就是进行DNS预先获取。

DNS Prefetch 已经被下面的浏览器支持

  • Firefox: 3.5+

  • Chrome: Supported

  • Safari 5+

  • Opera: Unknown

  • IE: 9 (called “Pre-resolution” on blogs.msdn.com)

默认情况下浏览器会对页面中和当前域名(正在浏览网页的域名)不在同一个域的域名进行预获取,并且缓存结果,这就是隐式的DNS Prefetch。如果想对页面中没有出现的域进行预获取,那么就要使用显示的DNS Prefetch了,也就是使用link标签:

<link rel=”dns-prefetch” href=”http://api.twitter.com”/>

DNS Prefetch应该尽量的放在网页的前面,推荐放在<meta charset=”/>后面。

PS:可以通过下面的标签禁止隐式的DNS Prefetch。


<meta http-equiv=”x-dns-prefetch-control” content=”off”>


=====无底限的分割条=====

如果朋友有互联网精彩好文推荐的,可以直接给我留言或直接到前端De早读课推荐。

http://www.zaoduke.net

要是对加QQ群感兴趣的话聊人森的话,欢迎加入243525054(注:微信)




发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

相关