首先说一下吧,我是在配置_config.yml 时hexo g一直报错(缺少什么文件吧 QTQ),尝试一天后失败告终,后来想想可能对我用处也不大。但这篇文章是我找到最详细的了,发布时间也比较新,所有拿来分享。

seo 优化

推广是一个烦人的事情啊喂,特别是对于我们搞技术的来说,可能就不擅长推广,那么怎么才能让别人知道我们呢,我们就要想办法让别人通过搜索就可以搜索到你博客的内容,给我们带来自然流量,这就需要 seo 优化,让我们的站点变得对搜索引擎友好

SEO 是由英文 Search Engine Optimization 缩写而来, 中文意译为“搜索引擎优化”。SEO 是指通过站内优化比如网站结构调整、网站内容建设、网站代码优化等以及站外优化。

让百度收录你的站点

我们首先要做的就是让各大搜索引擎收录你的站点,我们在刚建站的时候各个搜索引擎是没有收录我们网站的,在搜索引擎中输入 site:<域名>,如果如下图所示就是说明我们的网站并没有被百度收录。我们可以直接点击下面的“网址提交”来提交我们的网站

验证网站所有权

登录百度站长平台:http://zhanzhang.baidu.com, 只要有百度旗下的账号就可以登录,登录成功之后在站点管理中点击添加网站然后输入你的站点地址,建议输入的网站为www开头的,不要输入github.io的,因为github是不允许百度的spider爬取github上的内容的,所以如果想让你的站点被百度收录,只能使用自己购买的域名
1de31ec351ed9e8fa0a666a331366853.png
在选择完网站的类型之后需要验证网站的所有权,验证网站所有权的方式有三种:文件验证。html 标签验证和 cname 解析验证,使用哪一种方式都可以,都是比较简单的,但是一定要注意,使用文件验证文件存放的位置需要放在 source 文件夹下,如果是 html 文件那么 hexo 就会将其编译,所以必须要加上的 layout:false,这样就不会被 hexo 编译。(如果验证文件是 txt 格式的就不需要),其他两种方式也是很简单的,我个人推荐文件验证和 cname 验证,cname 验证最为简单,只需加一条解析就好~
9e7c57829371e8553e48120c984c4533.png

生成网站地图

我们需要使用 npm 自动生成网站的 sitemap,然后将生成的 sitemap 提交到百度和其他搜索引擎

安装 sitemap 插件

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

修改博客配置文件

在根目录配置文件中修改 url 为你的站点地址

1
2
3
4
5
6
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://cherryblog.site
root: /
permalink: :title.html
permalink_defaults:

执行完之后就会在网站根目录生成 sitemap.xml 文件和 baidusitemap.xml 文件,可以通过http://www.cherryblog.site/baidusitemap.xml,查看该文件是否生成,其中sitemap.xml文件是搜索引擎通用的文件,baidusitemap.xml是百度专用的sitemap文件。

向百度提交链接

然后我们就可以将我们生成的 sitemap 文件提交给百度,还是在百度站长平台,找到链接提交,这里我们可以看到有两种提交方式,自动提交和手动提交,自动提交又分为主动推送、自动推送和 sitemap

如何选择链接提交方式 1、主动推送:最为快速的提交方式,推荐您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。 2、自动推送:最为便捷的提交方式,请将自动推送的 JS 代码部署在站点的每一个页面源代码中,部署代码的页面在每次被浏览时,链接会被自动推送给百度。可以与主动推送配合使用。 3、sitemap:您可以定期将网站链接放到 sitemap 中,然后将 sitemap 提交给百度。百度会周期性的抓取检查您提交的 sitemap,对其中的链接进行处理,但收录速度慢于主动推送。 4、手动提交:一次性提交链接给百度,可以使用此种方式。
一般主动提交比手动提交效果好,这里介绍主动提交的三种方法 从效率上来说:
主动推送>自动推送>sitemap
701583918691a71b88c48f98385d2660.png

主动推送

安装插件 npm install hexo-baidu-url-submit —save 然后再根目录的配置文件中新增字段

1
2
3
4
5
baidu_url_submit:
count: 100 # 提交最新的一个链接
host: www.cherryblog.site # 在百度站长平台中注册的域名
token: 8OGYpxowYnhgVsUM # 请注意这是您的秘钥, 所以请不要把博客源代码发布在公众仓库里!
path: baidu_urls.txt # 文本文档的地址, 新链接会保存在此文本文档里

在加入新的 deploye

1
2
deploy:
- type:baidu_url_submitter

这样执行 hexo deploy 的时候,新的链接就会被推送了

设置自动推送

主题配置文件下设置,将 baidu_push 设置为 true:

1
2
# Enable baidu push so that the blog will push the url to baidu automatically which is very helpful for SEO
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 文件提交到百度就可以了~
513d8354340674c8e34c702a7170bfcd.png
我记得被百度收录过程还是蛮久的,一度让我以为我的方法有问题,提交链接在站长工具中有显示大概是有两天的时候,站点被百度收录大概花了半个月= =,让大家看一下现在的成果 在百度搜索 site:cherryblog.site 已经可以搜索到结果
d5a493c8610e5b0a2358409ae7b80d80.png

输入关键字的名字也可以在第二页就找到呢,好开森~
411785831c166b05d56a09742d57dc6e.png

让 google 收录你的站点

相比于百度,google 的效率实在不能更快,貌似十分钟左右站点就被收录了,其实方法是和百度是一样的,都是先验证你的站点所有权,然后提交 sitemap google 站点平台:https://www.google.com/webmasters/, 然后就是注册账号、验证站点、提交 sitemap,一步一步来就好,过不了过久就可以被 google 收录了
b2a2053612c4e55157c88401bf4c7384.png
d4bdeab31727e86d482f5de88f78675c.png

让其他搜索引擎收录你的站点

除了百度和 google 两大搜索引擎,还有搜狗、360 等其他的搜索引擎,流程都是一样的 ,大家就自行选择添加哈,这里就不再赘述了~

优化你的 url

seo 搜索引擎优化认为,网站的最佳结构是用户从首页点击三次就可以到达任何一个页面,但是我们使用 hexo 编译的站点打开文章的 url 是:sitename/year/mounth/day/title 四层的结构,这样的 url 结构很不利于 seo,爬虫就会经常爬不到我们的文章,于是,我们可以将 url 直接改成 sitename/title 的形式,并且 title 最好是用英文,在根目录的配置文件下修改 permalink 如下:

1
2
3
4
url: http://cherryblog.site
root: /
permalink: :title.html
permalink_defaults:


相关链接:
【Hexo 实战】SEO(百度、Google)设置