• 前言

    大部分人写博客都希望让别人访问到,但是GitHubCoding都做了防爬虫的处理,因此我们托管在其上的博客就无法被搜索引擎收录,需要我们手动提交。

    今天作者就来介绍下如何才能让度娘收录你的博客。作者的博客是HEXO+GitHub搭建的,主题是NEXT,虽说各种主题不一样,但是大致步骤相同,要学会举一反三。

    如果觉得NEXT主题不错的朋友,可以切换主题,之前出过一篇NEXT主题优化的教程:女朋友看了我的博客,说太LOW了,于是我折腾了一天~

    如何判断自己的博客被百度收录了?

    判断自己的博客有没被百度收录很简单,搜索site:域名,比如site:www.baidu.com

    如果搜索出结果,则表明被百度收录了,如下我的博客:

    如何操作?

    操作步骤还是挺复杂的,但是跟着一步一步总能成功,下面将会逐一介绍。

    准备一个百度站长账号

    已经有的不用申请了,没有的注册一个,注册地址:https://ziyuan.baidu.com

    验证网站所有权

    网站所有权通过验证之后,百度会认为你是网站所有者,那么你能做自动推送,手动提交等等功能。

    没有验证过的可以自己认证下,网址:https://ziyuan.baidu.com/site/siteadd

    打开之后输入你的博客首页地址,可以是Github Pages或者Coding的地址,然后点击下一步。

    HTML验证

    这里的验证其实有三种方式,这里作者说下HTML验证的方式。

    这里的方法需要根据不同的主题进行配置,作者使用的是NEXT主题,其他主题可以自己摸索。

    第一步:在主题配置文件_config.yml中添加如下一行配置:

    baidu_site_verification: true
    

    第二步:修改themes/next/layout/_partials/head.swig,添加从百度获取的完整的HTML验证标签,注意名字的对应!

    {% if theme.baidu_site_verification %}
      <meta name="baidu-site-verification" content="你的token" />
    {% endif %}
    

    第三步:编译发布你的博客,在博客首页按F12,如果在head标签中看到了验证标签则成功了,如下:

    第四步:点击验证按钮,如果没问题则已成功。

    生成站点地图

    通过构建网站地图能够让搜索引擎更好的抓取你的网站内容。

    第一步:安装插件,在博客根目录,直接CMD运行以下命令安装:

    npm install hexo-generator-sitemap --save
    npm install hexo-generator-baidu-sitemap --save
    

    第二步:修改站点配置文件_config.yml中的URL为你的博客首页地址,这样是为了保证生成的sitemap.xml文件中地址正确。

    第三步:在站点配置文件_config.yml中指定生成的sitemap的文件名和地址,在配置文件末尾添加如下配置:

    # 自动生成sitemap
    sitemap:
      path: sitemap.xml
    baidusitemap:
      path: baidusitemap.xml
    

    第四步:执行hexo g,正常情况下会在根目录下的public目录下多出两个文件,分别是sitemap.xmlbaidusitemap.xml

    等待百度自动抓取:百度收录都有一个周期,估计十几天会抓取一次。

    主动推送:在百度站长内手动提交自己的sitemap.xml内容,如下位置:

    自动推送:这个是今天的重点,下面介绍。

    如何自动推送?

    第一步:修改主题配置文件,将baidu_push修改为true,如下:

    baidu_push: true
    

    第二步:修改themes\next\layout\_scripts\baidu_push.swig(没有这个文件则创建),添加以下代码:

    {% if theme.baidu_push %}
    <script>
    (function(){
        var bp = document.createElement('script');
        var curProtocol = window.location.protocol.split(':')[0];
        if (curProtocol === 'https') {
            bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
        }
        else {
            bp.src = 'http://push.zhanzhang.baidu.com/push.js';
        }
        var s = document.getElementsByTagName("script")[0];
        s.parentNode.insertBefore(bp, s);
    })();
    </script>
    {% endif %}
    

    以上配置完成后,每次访问博客首页会自动向百度提交,不用再手动提交了。

    总结

    百度收录操作虽然复杂,但是按照作者的步骤来搞还是非常简单的,对于有博客的朋友可以借鉴下。

    另外作者为大家准备接近10M的面筋,涵盖后端的各个层面,老规矩,公号内回复Java面试宝典即可获取。

    10-30 23:05