分享各种网络资源
是我乃至整个互联网的精髓所在
 您目前所在位置: 站点首页 » WordPress » WordPress 代码 » WordPress头部代码中的dns-prefetch究竟是什么
  • WordPress头部代码中的dns-prefetch究竟是什么

  • 什么是dns-prefetch
  • 使用dns-prefetch的危害
  • 相关代码
  • 那么到底该不该使用
  • WordPress头部代码中的dns-prefetch究竟是什么-BanYuner

    站点优化一直是我比较关注的问题,虽然做不到水煮鱼以及张戈博客那样,但是我个人认为还是要不断的学习才能更加进步。

    今天在寻找相关办法的时候,我了解到了这个叫做dns-prefetch的东西,那么这个东西是什么呢,我表示也不是很了解。但是经过我百度之后能有个大概的了解了,这里就附上一些我找到额相关资料。

    什么是dns-prefetch

    DNS 实现域名到IP的映射。通过域名访问站点,每次请求都要做DNS解析。目前每次DNS解析,通常在200ms以下。针对DNS解析耗时问题,一些浏览器通过DNS Prefetch 来提高访问的流畅性。

    DNS Prefetch 是一种DNS 预解析技术,当你浏览网页时,浏览器会在加载网页时对网页中的域名进行解析缓存,这样在你单击当前网页中的连接时就无需进行DNS的解析,减少用户等待时间,提高用户体验。

    那么也就是说,后台会对于这些同域名下的链接进行后台解析,而次点击之后就会加速网页的载入,可能存在的感觉非常微弱,几乎感觉不到,但是还是存在一定的作用的。

    使用dns-prefetch的危害

    危害方面我简单的了解了一下,意思大概就是因为站点加载的时候,会预读取,那么DNS的请求量就会无形的增加了,后期可能数量多了之后就会被迫交出额外的钱。具体的大家可以去看看: http://www.pinkbike.com/news/DNS-Prefetching-implications.html

    相关代码

    <?php
    if (is_home()) { //判断当前页面是否为首页
    echo '<meta http-equiv="x-dns-prefetch-control" content="on" /> 
    <link rel="dns-prefetch" href="//7u2fs5.com1.z0.glb.clouddn.com/" />
    <link rel="dns-prefetch" href="//apps.bdimg.com/" />
    <link rel="dns-prefetch" href="//tp4.sinaimg.cn/" />
    <link rel="dns-prefetch" href="//s96.cnzz.com/" />
    <link rel="dns-prefetch" href="//z2.cnzz.com/" />
    <link rel="dns-prefetch" href="//c.cnzz.com/" />
    <link rel="dns-prefetch" href="//cnzz.mmstat.com/" />
    <link rel="dns-prefetch" href="//pcookie.cnzz.com/" />';
    } elseif (isset($_COOKIE['inlo_cookie'])) { //若为初次访问
    echo '';
    }
    else {//否则
    echo '<meta http-equiv="x-dns-prefetch-control" content="on" />
    <link rel="dns-prefetch" href="//7u2fs5.com1.z0.glb.clouddn.com/" />
    <link rel="dns-prefetch" href="//apps.bdimg.com/" />
    <link rel="dns-prefetch" href="//tp4.sinaimg.cn/" />
    <link rel="dns-prefetch" href="//s96.cnzz.com/" />
    <link rel="dns-prefetch" href="//z2.cnzz.com/" />
    <link rel="dns-prefetch" href="//c.cnzz.com/" />
    <link rel="dns-prefetch" href="//cnzz.mmstat.com/" />
    <link rel="dns-prefetch" href="//pcookie.cnzz.com/" /> ';
    }
    ?>
    

    上面的代码直接丢在header.php

    之前即可。

    // 设置cookies
    add_action('after_setup_theme', 'set_newuser_cookie');
    function set_newuser_cookie() {
    if (!isset($_COOKIE['inlo_cookie'])) {
    setcookie('inlo_cookie', 1, time()+1209600, COOKIEPATH, COOKIE_DOMAIN, false);
    }
    }
    

    这段代码直接丢在functions.php中即可。

    那么到底该不该使用

    其实这个问题我也不知道如何解决,至少我是使用了,也是开启了,先开启尝试一下效果,尝试几天之后看看有无变化再决定是否继续使用。

    打赏 分享此文

    扫码,支持我

    WordPress头部代码中的dns-prefetch究竟是什么

    支付宝(点击图片切换)

    扫码,支持我

    WordPress头部代码中的dns-prefetch究竟是什么

    微信(点击图片切换)

    扫码,手机看

    WordPress头部代码中的dns-prefetch究竟是什么
    WordPress头部代码中的dns-prefetch究竟是什么
    6 + 1 =