Hexo博客收录百度和谷歌-基于Next主题(应该是比较全面的一篇教程)

我们的博客做出来当然是希望别人来访问,但是Github和Coding都做了防爬虫处理,这样子我们博客可能就无法被搜索引擎收录,需要我们手动提交!

本教程基于Hexo博客框架,使用Next主题(其他主题举一反三),博主本人已绑定自己的域名(在下文会点明区别,没有太大影响);很多过程使用了Flow.ci进行自动构建!

原创文章,转载请注明出处

你需要准备的

1.百度站长账号;

没有的申请,很简单,跟百度分析一起使用挺好,不过分析的话还是推荐CNZZ,不过都挂上没有坏处!

2.谷歌账号:

谷歌账号能够享受所有的谷歌服务,当然也包括网站搜索分析服务!不过需要提前准备梯子!

3.Flow.ci用于自动构建网站地图(推荐,非必须):

可参考这篇文章>>配置自动构建,本文会在这基础之上进行提高!

4.最重要的是你有自己的博客!

验证你的站点是否被收录:

一般情况下你的站点是不能被搜到的!你可以用site验证:

验证百度:

site:www.oneonecity.xyz域名换成你自己的,百度还支持site搜索么?如果没有找到你的博客说明没有被收录!

验证谷歌:

site:www.oneonecity.xyz域名换成你自己的,谷歌是一定支持的,不过你需要梯子!如果没有找到你的博客说明没有被收录!

收录百度

措辞是不是有问题?就是你的网站被百度搜索收录!

1.手动提交:

你可以手动提交你的站点到百度搜索,点这里>>,当然这种方法很麻烦,因为如果想让每一篇文章都能被搜索到就需要把所有的页面链接进行提交!

2.验证网站所有权:

通过验证之后百度会认为你是网站所有者,然后能做诸如自动推送、手动推送的高级功能!
点这里>>,输入你的博客首页地址(可以是自己的域名也可以是Coding或者Github的Pages页面地址!),然后点击下一步!

3.进行验证:

这里有三种方法:文件验证、HTML标签验证和CNAME验证。下面分别说一下方法和适用范围!

(1)文件验证:

 
百度文件验证

a.你需要做的是下载验证文件:是一个html文件,里面存放着你的token信息!
b.然后将这个文件放在你的主题的根目录下,之所以不放在source是因为Next主题在构建过程中会在验证文件中加入很多东西影响验证!
c.接下来就是编译部署你的博客hexo g -d,如果你已经实现自动化部署的话只需要push你的原文件:

git add .

git commit -am "添加验证文件"

git push origin master

关于自动部署,请移步这里>>
d.点击点击这里进行验证,其实是你的博客首页加了验证文件路径;
e.最后点击完成验证如果顺利的话,是能够完成!这种方法比较麻烦,不是很推荐!

(2)HTML标签验证:

这种方法需要根据不同的主题进行配置,博主使用的Next主题,其他主题可以自己摸索,原理一样:都是将HTML验证标签加入到博客每个页面的head里面!注意是红框中完整的标签,而不是一部分!

 
百度文件验证

第一步:将该标签(红框中完整的,并非只是后面的token)
第二步:在Next主题配置文件(不是博客配置文件)开启提交百度的选项:

 
百度文件验证
# 此处设置成true之后,将themes/next/layout/_partials/head.swig
# 下把默认的百度和 google 验证值替换为搜索引擎为你提供的完整HTML标签即可
google_site_verification: true
baidu_site_verification: true

这里的名字google_site_verification:可以随便起,不过需要与后面的themes/next/layout/_partials/head.swig中相对应,默认都是下划线!
第三步:修改themes/next/layout/_partials/head.swig,添加从百度获取的完整的HTML验证标签,注意名字的对应!

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

第四步:同文件验证的c.步骤:编译部署你的博客!进入你的博客首页或者任意文章,按F12,如果再head标签中看到了验证标签,就可以了!

 
百度文件验证

第五步:点击验证按钮!,如果过程没问题则会验证成功!

(3)CNAME验证,如果你绑定了自己的域名,这种方式是最简单的!

第一步:你要有自己的域名并使用CNAME解析,如果没有请移步这里>>
第二步:如图添加一条新的CNAME解析:记录类型CNAME主机记录是你的token,,记录值是zz.baidu.com,其他默认:

 
百度文件验证

第三步:点击验证!这一种方法最简单,推荐!

收录谷歌:

HTML 标签验证,参考百度验证!

{% if theme.google_site_verification %}
<meta name="google-site-verification" content="yourtoken" />
{% endif %}

生成站点地图:

这一步很重要,通过构建网站地图能够让搜索引擎更好的抓取你的网站内容!

1.安装sitmap插件:

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

如果你搭建了基于Flow.ci的自动构建,请修改Flow.ci的自定义脚本:

# 安装Hexo命令行工具
flow_cmd "npm install hexo-cli -g" --echo
flow_cmd "npm install hexo-generator-sitemap --save" --echo
flow_cmd "npm install hexo-generator-baidu-sitemap --save" --echo # 准备并安装私钥
flow_cmd "cp .ssh/id_rsa ." --echo
flow_cmd "chmod 600 ./id_rsa" --echo
flow_cmd "eval $(ssh-agent)" --echo
flow_cmd "ssh-add ./id_rsa" --echo # 执行Hexo生成和发布 flow_cmd "hexo clean" --echo
flow_cmd "hexo g" --echo
flow_cmd "hexo d" --echo
flow_result $?

2.修改博客配置文件:

a.修改URL为你博客首页,这样是为了保证生成的sitemap.xml文件中地址正确:

 
百度文件验证

b.指定生成文件名及路径,在配置文件最后添加一下代码:

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

c.执行构建hexo g,正常情况下会在source文件夹下看到多出两个文件:sitemap.xmlbaidusitemap.xml,这就是sitemap文件。
此后等待搜索引擎抓取或者配置自动推送或者主动推送!

自动推送sitemap到百度:

基于Next主题,其他主题原理一样:

修改主题配置文件

baidu_push状态改成true

# Enable baidu push so that the blog will push the url to baidu automatically which is very helpful for SEO
baidu_push: true

修改baidu_push.swig:

位置是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 %}

这样子的话每次访问博客中的页面会自动向百度提交。

提交Google站点地图:

添加/测试站点地图

点此>>进入Google Search Console控制台,需要翻墙。
点击你的站点,如果没有请先添加站点;
然后点击控制台-->抓取-->站点地图,点击右上角添加/测试站点地图按钮,将你的sitemap.xml提交测试,测试成功之后重复该步骤进行添加!

 
谷歌sitemap

帮助文档>>

作者:小矮人Ethan
链接:https://www.jianshu.com/p/8c0707ce5da4
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Hexo博客收录百度和谷歌-基于Next主题的更多相关文章

  1. Hexo博客框架攻略

    前言 前天无意在b站看到up主CodeSheep上传的博客搭建教程,引起了我这个有需求但苦于没学过什么博客框架的小白的兴趣.于是花了两天时间终于终于把自己的博客搭建好了,踩了无数的坑,走偏了无数的路, ...

  2. 【干货】2个小时教你hexo博客添加评论、打赏、RSS等功能 (转)

    备注:该教程基于Hexo 2.x版本,目前Hexo是3.x版本,照本教程实现有可能会出现404错误,笔者目前还未找时间去解决,待笔者找时间解决该问题后,再写一篇该问题的解决教程,给各位读者带来困扰,还 ...

  3. Hexo博客搭建以及Next主题美化的经验之谈

    这并不是一篇博客搭建教程.内容主要包含个人对于Hexo博客搭建的心得,Next6.0主题美化的部分建议,以及摘录一些各种用于博客搭建的link. 在博客园3年6个月,确实也学到了很多,博客园也是目前为 ...

  4. hexo博客谷歌百度收录踩坑日记

    title: hexo博客谷歌百度收录踩坑日记 toc: false date: 2018-04-17 00:09:38 百度收录文件验证 无论怎么把渲染关掉或者render_skip都说我的格式错误 ...

  5. 基于 Github Actions 自动部署 Hexo 博客

    前言 前不久使用了 Hexo 搭建独立博客,我是部署在我的腾讯云轻量应用服务器上的,每次都需要 hexo deploy 然后打包.上传.解压和刷新 CDN,非常麻烦.我的服务器配置也不高 2C2G 无 ...

  6. hexo博客相关

    https://www.cnblogs.com/sulishibaobei/p/6428241.html 利用hexo+github+nodejs搭建自我博客的一天 http://www.sulish ...

  7. Hexo博客部署到远程仓库(Conding、Gitee、Github)

    一.本地环境搭建 1.安装Git Git可以有效.高速的处理各种项目版本管理.也就是用来管理你的hexo博客文章,上传到GitHub的工具. Git下载地址 安装好了之后使用git -version查 ...

  8. Hexo博客主题优化

    Hexo博客主题优化 添加背景图 在 themes/*/source/css/_custom/custom.styl 中添加如下代码: body{ background:url(/images/bg. ...

  9. Hexo 博客 github.io MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

随机推荐

  1. 2.Mysql集群------Mycat读写分离

    前言: Mycat: 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务.ACID.可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群 一 ...

  2. Mybatis查询报错:There is no getter for property named '*' in 'class java.lang.String

    问题: 执行查询时报错:There is no getter for property named '*' in 'class java.lang.String 原因: 传过去的参数为识别.本例为 p ...

  3. typeid操作符

    typeid() operator返回type_info,返回值不可拷贝.不可赋值 // Illustrates the typeid operator. #include <iostream& ...

  4. Oracle多表连接方法

    笛卡尔连接[结果集为各表记录的乘积] SELECTt * FROM table_1, table_2, table_n SELECTt * FROM table_1 CROSS JOIN table_ ...

  5. using namespace std 是什么意思?

    摘录CSDN上面大牛的回答简要意思就是使用标准库,想知道更清楚的继续读下面的. using   namespace   std   意思:   using   和namespace都是C++的关键词. ...

  6. cordforce 495 补题 <未完>

    题目链接: http://codeforces.com/contest/1004/my A. Sonya and Hotels 分类讨论 看第一个样例解释的时候没看到后面第二行还有一个19,想了半天为 ...

  7. 关于对GitHub的使用

    什么是GitHub? GitHub是版本控制和协作的代码托管平台.它可以让你在其他人在任何地方一起工作. 本文主要向您介绍GitHub essentials,如存储库,分支,提交和合并请求.将您创建自 ...

  8. php 图片操作类,支持生成缩略图,添加水印,上传缩略图

    <?php class Image {     //类开始     public $originimage = ""; //源图片文件地址     public $image ...

  9. sql查询平均下单时间

    SQL查询订单平均审核时长 今天在写一个sql,需求是算一个订单在执行状态中的各个节点的时长 比如在订单中,状态0为开始接单,状态3为已经审核,那么现在需要计算每个客服的平均审核时长 像图中所示:这个 ...

  10. TouTiao开源项目 分析笔记20 问答详情

    1.效果预览 1.1.效果预览,从问答列表开始 前面实现了从列表到内容. 这里主要讲解从内容到详情. 点击每一个回答内容,进入回答详情页面. 1.2.触发的点击事件 在WendaContentView ...