Hexo + Github Page 搭建技术博客教程系列(四) 之 设置 SEO 优化百度、谷歌收录

庄小帅的博客

前言


忙活了这么久,总算是把我们自己的博客小站给折腾个差不多了,可是除了我们自己,谁还知道我们的博客小站呢?这就把自己打扮的妖艳逼人,可是没有人知道啊!怎么办?去相亲网站挂出自己的个人资料,让更多的人知道。同样的,对于我们的博客,要想让更多的人点进来,需要通过百度、Google 搜索来让别人知道我们,这就需要进行 SEO 优化来让我们的博客站点对搜索引擎更加友好。SEO (Search Engine Optimization) 搜索引擎优化是指通过站内优化(如网站结构调整、网站内容建设、网站代码优化等)以及站外优化来提高网站在搜索引擎内的自然排名。

百度收录


打开百度搜索,输入 site:你的博客站点域名 来查看你的站点是否被百度收录:

baiduSite.png

w(゚Д゚)w 果然是没有收录。

验证网站所有权

登录 百度站长平台 进入”用户中心” –> “站点管理” –> “添加网站”。

第一步:输入网站。注意这里添加的站点地址只能是自己购买的域名,不能是 github.io。

第二步:选择站点属性。

第三步:验证网站。有文件验证、HTML标签验证、CNAME验证三种方式,我这里选择的是文件验证这种方式。根据指示下载验证文件后,将下载的文件放在博客根目录下的 source 文件夹下,如果你下载的验证文件类型是 html 文件则还需要对该 html 文件做相应修改以保证该文件上传到网站后是一模一样的,即不被渲染和压缩。因此需要在 html 文件第一行加入下面的内容:

---
layout: false
---

接着重新部署更新自己的博客后,确认验证文件是否可以正常访问,如果不能访问的话会出现 “404 Error”,这时候重新部署上传几次就可以了;如果可以访问的话会出现之前下载的验证文件里的信息(即一串字母数字的组合),点击“完成验证”按钮即可。

选择链接提交方式

当网站通过验证之后,我们就可以使用链接提交工具了,目前链接提交工具分为自动提交和手动提交两大块,手动提交顾名思义自己手动复制粘贴去提交。自动提交中又分为:sitemap、主动推送、自动推送三种方式。三者都是将站点自身的 URL 自动推送至百度,而后等待百度爬虫进行对页面的抓取。建议安装三个自动推送方式,并让三者协同工作,将抓取和收录价值最大化。

手动提交

点击“网站支持” –> “数据引入” –> “链接提交” –> “手动提交”,填写链接地址即可。

sitemap 提交

Sitemap(即站点地图)就是网站上各网页的列表。创建并提交 Sitemap 有助于百度发现网站上的所有网页。

首先,安装 Sitemap generator 插件:

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

接着,打开博客站点配置文件 _config.yml,增加 baidusitemap 属性:

baidusitemap:
    path: baidusitemap.xml

这样执行 hexo generate 时,会在 public/ 文件夹下生成站点文件 baidusitemap.xml

最后,在百度站长平台 –> “数据引入” –> “链接提交” –> “自动提交” –> “sitemap” –> “填写数据文件地址” ,填上你的博客主页/baidusitemap.xml即可。

主动推送

主动推送我们网站第一时间产生的新内容给百度,不过主动推送是有推送数量的限制,尽可能的不要推送重复的内容给百度。这样会大大浪费自己的可推送资源。

首先,在百度站长平台 –> “数据引入” –> “链接提交” –> “自动提交” –> “主动推送” 找到自己的推送调用地址和密钥 token:

baiduUrl.png

然后,在博客根目录下安装插件:

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

最后,打开博客站点配置文件 _config.yml,增加 baidu_url_submit 属性以及修改 url 属性和 deploy 属性:

url: http://littledream.top  ## 修改为你在百度站长平台注册的域名

# 百度主动推送
baidu_url_submit:
  count: 5 ## 提交最新的 5 个链接
  host: littledream.top ## 注意修改为你在百度站长平台中注册的域名
  token: qeqwqrq123456 ## 注意修改为你的秘钥
  path: baidu_urls.txt ## 文本文档的地址  新链接会保存在此文本文档里

# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
- type: git
  repo:
    github: https://github.com/GuichenLv/GuichenLv.github.io.git
  branch: master
  ## 发布时同时进行百度推送
- type: baidu_url_submitter  ## 这一条是新加的  注意前面有个 -

这样执行 hexo generate 时,会在 public/baidu_urls.txt 这个文本文件保存最新的链接;执行 hexo deploy 时,会从上述文件中读取链接提交到百度。

baiduSubmitSuccess.png

从图上可以看出,成功推送了 5 条 url,当天剩余可推送 url 还有 9994条。

自动推送

我们将一段js代码部署到我们的每一个网页中,当有用户进行访问时就会触发这段代码,这段代码就会自动将当前页面的 url 推送给了百度。实现起来非常简单,只需要将百度提供的代码安装在网站页面中,安装完成后即可实现链接自动推送功能。

首先,打开主题配置文件 _config.yml,增加 baidu_push 属性:

# 自动推送
baidu_push: true

然后,在 themes/yilia/layout/_partial/ 文件夹下新建 baidu-push.ejs 文件,自动推送工具代码 可以在百度站长平台自动推送菜单下找到:

<% 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>
<% } %>

最后,打开 themes/yilia/layout/_partial/head.ejs,在文件最后 </head> 前添加一句代码即可:

<%- partial('baidu-push') %>

效果查看

上面这些都设置成功后,一般不会立刻收录生效,稍等两天再来看看。

链接数量查看

打开百度站长平台,可以看到通过不同方式提交成功的去重后链接数量。

百度搜索结果查看

打开百度搜索博客,现在可以看到自己的博客啦 ヾ(≧▽≦*)o

谷歌收录


与百度收录操作相似,但是谷歌的效率要高很多,操作完之后基本就收录完成了。

添加网站进行验证

打开 谷歌搜索控制台,选择 URL prefix,输入你的博客域名后进行验证,我这里使用的仍然是 HTML 验证方式,可以参考 谷歌验证方法详情 进行操作。与百度收录操作相似的,下载 html 文件到博客根目录下的 source 文件夹并在 html 文件前加上代码:

---
layout: false
---

重新部署更新自己博客后,点击 VERIFY 按钮查看是否添加验证成功。

提交 Sitemap

首先,安装插件:

npm install hexo-generator-sitemap --save

接着,打开博客站点配置文件_config.yml,增加 sitemap 属性:

# googleSiteMap
sitemap:
  path: sitemap.xml

执行 hexo generate 时,会在 public/ 文件夹下生成站点文件 sitemap.xml。执行 hexo deploy 时,将上述文件部署到云端。

最后,在谷歌控制台提交这个 sitemap。只有 deploy 之后再提交才会成功,失败的话重新 deploy 再 submit 就好。

googleCite.png

睡一觉第二天起来,谷歌搜索下自己的博客发现已经可以搜索到了。

googleSearch.png

SEO 优化


互联网这么大,写相似博客的人这么多,搜索出来结果那么多,怎么样才能让你的文章在搜索结果前排是个学问。下面一些简单的小技巧可以让自己排名提升。

加密文章 URL

默认的文章 URL 网址/年/月/日/文章名 格式结构过于复杂,不便于搜索引擎抓取,需要进行优化。

首先,安装插件:

npm install hexo-abbrlink --save

接着,打开博客站点配置文件 _config.yml,修改 permalink 属性并添加 abbrlink 属性:

permalink: article/:abbrlink.html
abbrlink:
  alg: crc32  # 算法
  rep: hex    # 进制

注意修改之后文章的链接都会发生变化,所以旧文章的统计数据(浏览量)会重新计数。

添加 robots.txt

robots.txt 是一种存放于网站根目录下的 ASCII 编码的文本文件,它的作用是告诉搜索引擎此网站中哪些内容是可以被爬取的,哪些是禁止爬取的。

source/ 文件夹下新建 robots.txt 文件:

User-agent: *
Allow: /
Allow: /tags/

Disallow: /archives/
Disallow: /categories/
Disallow: /vendors/
Disallow: /js/
Disallow: /css/
Disallow: /fonts/
Disallow: /vendors/
Disallow: /fancybox/

Sitemap: http://你的博客域名/sitemap.xml
Sitemap: http://你的博客域名/baidusitemap.xml

其中,Allow 表示允许被访问的,Disallow 则不允许。后面两个 Sitemap 是给爬虫用的。

deploy 后会生成在网站的根目录,即 /public/ 文件夹下。

还有一些其他的策略可以进行优化,比如首页 title 优化、给非友情链接的出站链接添加 “nofollow” 标签等,这里就不介绍了。那么设置 SEO 优化百度、谷歌收录就讲到这里,到目前为止已经花费了 4 篇博客来介绍如何搭建博客站、美化博客站、实现博客站的基本功能,下一篇博客我们来说说怎么写博客。

参考信息


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342