Hexo-NexT博客提交搜索引擎收录

如果你不主动提交你的博客地址给各大搜索引擎,那么即使你站内优化做得再好,搜索引擎根本都不知道你的博客的存在。本文简单介绍如何在各大搜索引擎提交博客。

站点地图生成

站点地图即sitemap,是一个页面,上面放置了网站上需要搜索引擎抓取的所有页面的链接。站点地图可以告诉搜索引擎网站上有哪些可供抓取的网页,以便搜索引擎可以更加智能地抓取网站。

安装百度和Google的站点地图生成插件

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

修改配置文件

修改站点配置文件_config.yml,添加以下内容:

1
2
3
4
5
# 自动生成sitemap
sitemap:
path: sitemap.xml
baidusitemap:
path: baidusitemap.xml

hexo g生成后进入public目录,你会发现里面有sitemap.xmlbaidusitemap.xml两个文件,这就是生成的站点地图。里面包含了网站上所有页面的链接,搜索引擎通过这两个文件来抓取网站页面。

  • sitemap.xml用来提交给Google
  • baidusitemap.xml用来提交给百度

Google Search Console

查看是否被收录

首先查看你的博客地址是否已经被Google收录,在Google的搜索栏中搜索:

1
site:https://tding.top

搜索资源提交

进入Google Web Master Search Console,首先需要进行站点验证,由于NexT-7.1.2已经内置了这个方法,所以这里只需要在主题配置文件_config.yml把验证代码写上去就可以:

1
2
3
# Google Webmaster tools verification.
# See: https://www.google.com/webmasters
google_site_verification: smrzctX4--4QKjd_jAPttPxWy06c4SLQo2v1sHBA5rE

然后提交sitemap即可。

百度站长平台

添加、验证站点

由于NexT-7.1.2已经内置了这个方法,所以这里只需要在主题配置文件_config.yml把验证代码写上去就可以:

1
2
3
# Baidu Webmaster tools verification.
# See: https://ziyuan.baidu.com/site
baidu_site_verification: bfzCl5Q4EF

生成、部署后进行验证即可。

链接提交

百度站长平台的链接提交方式分为自动提交和手动提交两种,此处只讲自动提交,手动提交按照要求操作即可。

主动推送(实时)

主动推送最为快速的提交方式,是被百度收录最快的推送方式。主动推送的实现原理如下:

  • 新链接的产生, hexo generate 会产生一个文本文件,里面包含最新的链接
  • 新链接的提交, hexo deploy 会从上述文件中读取链接,提交至百度搜索引擎

下面是具体的实现:

安装插件:

1
npm install hexo-baidu-url-submit --save

然后在站点配置文件_config.yml添加:

1
2
3
4
5
baidu_url_submit:
count: 5 ## 提交最新的五个链接
host: tding.top ## 百度站长平台中注册的域名
token: xxxxxxxxxxx ## 准入秘钥
path: baidu_urls.txt ## 文本文档的地址, 新链接会保存在此文本文档里

准入秘钥可以在链接提交-自动提交-主动推送(实时)中查看。

然后我们需要保证站点_config.yml文件中url的值是百度站长平台注册的域名, 比如:

1
2
3
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: https://tding.top/

最后,加入新的deployer-baidu_url_submitter:

1
2
3
4
5
6
7
8
9
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
- type: git
repository: [email protected]:dta0502/dta0502.github.io.git
branch: master
# other deployer
- type: leancloud_counter_security_sync
- type: baidu_url_submitter

自动推送

修改主题配置文件把baidu_push设置为true。

1
baidu_push: true

然后就会将一下代码自动推送到百度,位置是themes\next\layout_scripts\baidu_push.swig,这样每次访问博客中的页面就会自动向百度提交sitemap。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{% 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 %}

sitemap提交

首先访问之前生成的sitemap文件测试是否成功:https://tding.top/baidusitemap.xml

然后我们可以在链接提交-自动提交-sitemap提交中进行站点地图的提交。

输入验证码后提交即可,一般情况下,百度会在一小时内处理该文件,并提取其中的url。

部署Hexo到VPS并且开启HTTPS

由于百度蜘蛛采集链接信息之前需要访问 baidusitemap.xml 文件,而这个文件是在 GitHub Pages 里面的,但是 GitHub Pages 是禁止百度蜘蛛爬取的,所以百度蜘蛛在获取 baidusitemap.xml 文件这一步骤就被禁止了,GitHub Pages 返回 403 错误,因此抓取失败(哪怕获取到 baidusitemap.xml 文件也不行,因为后续需要采集的静态网页全部是放在 GitHub Pages 中的,全部都会被禁止)。

我们可以通过百度站长的抓取诊断来验证是否出现以上情况:

这里基本可以确定 GitHub Pages 拒绝了百度 Spider 的爬取请求。

下面是GitHub的一个回复:

I’ve confirmed that we are currently blocking the Baidu user agent from crawling GitHub Pages sites. We took this action in response to this user agent being responsible for an excessive amount of requests, which was causing availability issues for other GitHub customers. This is unlikely to change any time soon, so if you need the Baidu user agent to be able to crawl your site you will need to host it elsewhere.

因此我需要把Hexo部署到自己的VPS上,具体的部署过程见:Hexo 博客部署到 VPS

为了能够部署到VPS,那就需要绑定一个个性域名,具体过程见GitHub Pages绑定域名

然后再把Hexo升级HTTPS,具体步骤见:Hexo升级HTTPS

同时由于我们知道了百度爬虫的用户代理,那么就可以直接使用 curl 命令来模拟百度爬虫的请求,观察返回的 http 结果是否正常:

1
curl -A "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)" https://tding.top/baidusitemap.xml

结果看出模拟请求的结果是正常的。

搜狗站长平台

文件路径:~\themes\next\layout\_partials\head\head.swig,添加以下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{% if theme.google_site_verification %}
<meta name="google-site-verification" content="{{ theme.google_site_verification }}"/>
{% endif %}

{% if theme.bing_site_verification %}
<meta name="msvalidate.01" content="{{ theme.bing_site_verification }}"/>
{% endif %}

{% if theme.yandex_site_verification %}
<meta name="yandex-verification" content="{{ theme.yandex_site_verification }}"/>
{% endif %}

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

+{% if theme.sogou_site_verification %}
+ <meta name="sogou_site_verification" content="{{ theme.sogou_site_verification }}"/>
+{% endif %}

主题配置文件_config.yml添加:

1
2
+# Sougou Webmaster tools verification.
+sogou_site_verification: YXFDrGSL8d

360搜索站长平台

文件路径:~\themes\next\layout\_partials\head\head.swig,添加以下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{% if theme.google_site_verification %}
<meta name="google-site-verification" content="{{ theme.google_site_verification }}"/>
{% endif %}

{% if theme.bing_site_verification %}
<meta name="msvalidate.01" content="{{ theme.bing_site_verification }}"/>
{% endif %}

{% if theme.yandex_site_verification %}
<meta name="yandex-verification" content="{{ theme.yandex_site_verification }}"/>
{% endif %}

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

{% if theme.sogou_site_verification %}
<meta name="sogou_site_verification" content="{{ theme.sogou_site_verification }}"/>
{% endif %}

+{% if theme.so_site_verification %}
+ <meta name="360-site-verification" content="{{ theme.so_site_verification }}"/>
+{% endif %}

主题配置文件_config.yml添加:

1
2
+# 360 Webmaster tools verification.
+so_site_verification: b2195ba72e4870178be78acf3163b3ce

神马站长平台

文件路径:~\themes\next\layout\_partials\head\head.swig,添加以下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{% if theme.google_site_verification %}
<meta name="google-site-verification" content="{{ theme.google_site_verification }}"/>
{% endif %}

{% if theme.bing_site_verification %}
<meta name="msvalidate.01" content="{{ theme.bing_site_verification }}"/>
{% endif %}

{% if theme.yandex_site_verification %}
<meta name="yandex-verification" content="{{ theme.yandex_site_verification }}"/>
{% endif %}

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

{% if theme.sogou_site_verification %}
<meta name="sogou_site_verification" content="{{ theme.sogou_site_verification }}"/>
{% endif %}

{% if theme.so_site_verification %}
<meta name="360-site-verification" content="{{ theme.so_site_verification }}"/>
{% endif %}

+{% if theme.shenma_site_verification %}
+ <meta name="shenma-site-verification" content="{{ theme.shenma_site_verification }}"/>
+{% endif %}

主题配置文件_config.yml添加:

1
2
+# shenma Webmaster tools verification.
+shenma_site_verification: 0febefc87224a8e180455c8bfbf8044a_1566192856
赞赏一杯咖啡
0%