本文主要介绍博客搜索 SEO 优化的相关知识,博客系统采用 Hexo 框架,Next 主题。
前言
辛辛苦苦写的博客不能被搜索引擎发现岂不可惜,好东西还是希望让更多的人看到(满足下小小的虚荣心)。因此就引出了博客的 SEO(Search Engine Optimization) 搜索优化这篇博文。
SEO 毕竟是很专业的事情,阅读本文后尽量使读者达到如下效果:
- 博客文章可被 Google 搜索到
- 博客文章在 Google 搜索排名靠前
- SEO 知识拓展
SEO
SEO(Search Engine Optimization)即搜索引擎优化,维基百科 上给出的定义如下:
搜索引擎优化是一种通过了解搜索引擎的运作规则来调整网站,以及提高目的网站在有关搜索引擎内排名的方式。
个人理解 SEO 可从两方面入手:
1.技术手段:
通过研究搜索引擎的规则,利用某些技巧提升 SEO 效果;
2.内容质量:
内容质量是更长久的提升SEO效果的核心,这里直接引用维基百科中的内容:
站点经常地更新,有用、原创的内容,和创建几个实用、有意义的导入链接,获得相当可观数目的基本搜索流量不是什么难事。
当站点拥有有用的内容,其它站点员自然而然会链接至该站,进而增加访客它的网页级别和访客流。当访客发现一个有用的网站,他们倾向于利用电子邮件或者及时消息链接介绍给其它访客。
总括来说,增进网站质量的搜索引擎优化实现很可能比直接查找操控搜索排名手段的短期实现要活得长久。顶尖的搜索引擎优化员们找寻的目标与搜索引擎追求发扬光大的东西二者不约而同。他们是:相关性、对他们用户有用的内容。换句话说,即向用户提供优质有用,而且独特的数据,以内容营销的方法,软性地吸引潜在的客户,自自然然地找到你的网页。
以上简单介绍 SEO 概念及优化,博客内容质量的提升应该是我们每个博主共同的愿景,需要长久的坚持和创作,本文并不细数。接下来介绍Hexo 博客 SEO 优化的一些技巧。
让 Google 找到你的博客
验证网站
1 查看是否被收录
打开谷歌搜索,在搜索框里输入自己的博客 URL
1 | site: https://fedoryx.github.io/ |
如果提示说:
1 | 找不到和您查询的 site:https://fedoryx.github.io |
说明未被收录。
我遇到的情况是博客搭建好后谷歌是不会自动收录的。
2 Google Search Console 提交网站
若未被谷歌收录,则需在谷歌搜索进行配置。前往 Google Search Console,登录谷歌账号。
添加属性,将博客地址1
site:https://fedoryx.github.io/
添至相应位置。
谷歌搜索有多种验证方式,这里我选择谷歌推荐的 HTML 文件上传方式。下载 HTML 验证文件,拷贝到 Hexo/sources/ 文件夹下。
3 添加站点地图
作用:告诉搜索引擎你的网站结构等信息,让搜索引擎更智能抓取内容。
第一步
打开 Git Shell,进入到 Hexo 目录,输入如下命令安装:
1 | $ npm install hexo-generator-sitemap --save |
第二步
打开 Hexo 目录下的 _config.yml 文件,在最下方添加如下字段:
1 | # 自动生成sitemap |
然后重新编译:
1 | $ hexo generate |
重新部署:
1 | $ hexo deploy |
第三步:
进入 Google Search Console - 抓取 - 站点地图,点击「添加/测试站点地图」,输入你的博客网址。若无报错则站点地图提交成功
提交 robots.txt
robots.txt 是一种存放于网站根目录下的 ASCII 编码的文本文件,它的作用是告诉搜索引擎此网站中哪些内容是可以被爬取的,哪些是禁止爬取的。robots.txt 放在博客目录下的 source 文件夹中,博客生成后在站点目录 /public/ 下。
我的 robots.txt 文件内容如下:
1 | User-agent: * |
robots.txt 文件更新至网站后可进入 Google Search Console - 抓取 - robots.txt 测试工具进行测试。
Google 抓取工具
利用 Google 抓取工具可以测试 Google 会如何抓取或呈现您的网站上某个网址。
进入Google Search Console - 抓取 - Google 抓取工具 ,在这里填上需要抓取的 URL,不填表示抓取首页。抓取方式可以选择桌面、智能手机等等,自行根据需要选择。填好 URL 之后,点击抓取。然后可能会出现几种情况,如:完成、部分完成、重定向等,这三种情况是可以提交的。
提交完成后,提交至索引,根据提示操作就可以了,我的提交:
SEO 中抓取和索引知识可参考 SEO基礎課程:認識抓取 (Crawl) 與索引 ( Index )这篇文章。
以上就是 Google Search Console 的相关配置,完成后可搜索博客首页或文章标题进行测试是否被谷歌收录。
提升 Google 搜索排名
关键字
博客根目录 _config.yml 文件进行如下修改,关键字英文逗号隔开:
1 | # Site |
文章中加入关键字:1
2
3
4
5
6
7
8---
title: ###
date: ###
categories: ###
tags: ###
keywords: ###
description: ###
---
文章路径简化
Hexo 默认的文章链接形式为 domain/year/month/day/postname,默认就是一个四级 url,并且可能造成 url 过长,对搜索引擎是十分不友好的。我们可以改成 domain/postname 的形式。编辑站点 _config.yml 文件,修改其中的 permalink 字段改为:
1 | permalink: :title.html |
添加 nofollow 标签
给非友情链接的出站链接添加「nofollow」标签,nofollow 标签是由谷歌领头创新的一个「反垃圾链接」的标签,并被百度、yahoo 等各大搜索引擎广泛支持,引用 nofollow 标签的目的是:用于指示搜索引擎不要追踪(即抓取)网页上的带有 nofollow 属性的任何出站链接,以减少垃圾链接的分散网站权重。
1.修改 footer.swig(your-hexo-site\themes\next\layout_partials)
将下面代码
1 | {{ __('footer.powered', '<a class="theme-link" href="http://hexo.io">Hexo</a>') }} |
改成
1 | {{ __('footer.powered', '<a class="theme-link" href="http://hexo.io" rel="external nofollow">Hexo</a>') }} |
将下面代码
1 | <a class="theme-link" href="https://github.com/iissnan/hexo-theme-next"> |
改成
1 | <a class="theme-link" href="https://github.com/iissnan/hexo-theme-next" rel="external nofollow"> |
2.修改 sidebar.swig(your-hexo-site\themes\next\layout_macro)
将下面代码
1 | <a href="{{ link }}" target="_blank">{{ name }}</a> |
改成
1 | <a href="{{ link }}" target="_blank" rel="external nofollow">{{ name }}</a> |
将下面代码
1 | <a href="http://creativecommons.org/licenses/{{ theme.creative_commons }}/4.0" class="cc-opacity" target="_blank"> |
改成
1 | <a href="http://creativecommons.org/licenses/{{ theme.creative_commons }}/4.0" class="cc-opacity" target="_blank" rel="external nofollow"> |
优化都完成后可通过谷歌搜索文章标题,测试是否被收录及排名。
引用
1.维基百科 SEO