hexo使用记录

Hexo是一个快速、简洁且高效的博客框架。Hexo使用Markdown(或其他渲染引擎)解析文章,它可以使用各种主题生成静态网页。可以用Hexo快速搭建博客,而不需要任何数据库和后台代码。一般会把Hexo部署在GitHub Pages上,如果想在国内更快的访问,可以搭建在Coding上,它同样提供了Pages服务。

开始使用

Hexo基本的安装、配置等说明在它的官方文档里都有说明,在此不再赘述。

主题

Hexo可以方便地更换主题。只需要将下载下来的主题放在hexo的themes文件夹内,并将根目录下的的_config.yml内的theme修改为对应的主题名称,即可切换主题。

在Hexo中有两份主要的配置文件,其名称都是_config.yml。其中,一份位于站点根目录下,主要包含Hexo本身的配置;另一份则位于主题目录下,主要用于配置主题相关的选项。可以将前者称为站点配置文件,后者称为主题配置文件

评论

添加评论是博客中常用的功能,在Hexo中通过集成第三方服务多说来添加评论。

  • 首先在多说登录后,在首页选择“我要安装”。
  • 创建站点,填写站点相关信息。
  • 完成后在站点配置文件中新增duoshuo_shortname字段,值设置为多说域名中填写的值。

除了评论,还可以通过集成第三方服务,添加数据统计与分析内容分享搜索等服务。

搜索引擎收录

写了几篇博客之后,会发现自己的文字并不能被搜索引擎搜索到。这下不能装逼了,没关系,只需要让搜索引擎收录你的网页即可。

网站验证

百度和谷歌分别提供了站长平台Google Search Console给用户管理自己的网站。

首先需要验证你对网站的所有权,以百度为例。

  • 首先,需要提交你的链接地址。
  • 提交后,百度会要求验证,来证明你是该域名的拥有者,可以快捷批量添加子站点,查看所有子站的数据,无需再一一验证子站点。站长平台提供了三种验证方式:文件验证html标签验证CNAME验证
    • 文件验证:下载验证文件,将其放置在域名根目录下,使其能被访问到。
    • html标签验证:将html标签添加至网站首页html代码的标签与标签之间。
    • CNAME验证:需要登录域名提供商或托管服务提供商的网站,添加新的DNS记录。

一般采用文件验证的方式,如果你的博客搭建在GitHub Pages上,你会发现验证无法通过。。因为百度无法访问国外地址。所以,可以选择将博客同时构建在GitHub和Coding上。

同时托管到GitHub和Coding

修改配置

首先修改站点配置文件_config.yml中的deploy属性:

1
2
3
4
5
deploy
type: git
repo:
github: <repository url>, [branch]
coding: <repository url>, [branch]

这里要注意格式的缩进,否则会报错。提交方式用http和ssh都可,ssh避免了输入账号密码,它需要添加公钥,这方面的教程很多,就不多说了。。

在Coding上创建新项目

默认你已经把Hexo托管到了GitHub上了。。那么现在就要把他同时托管到Coding。部署博客的方式有两种,第一种是Pages服务的方式,第二种演示方式可以绑定自定义域名。这里我们选择第一种方式。

首先,在Coding上创建一个仓库,推荐名称和用户名一样,比如我的Coding用户名是huga,博客仓库名也是huga。这样访问huga.coding.me就能访问博客,否则需要带上项目名huga.coding.me/[项目名]。然后选择代码Pages 服务,开启服务即可。

Coding Pages

接着,在博客source/目录下需要创建一个空白文件,名字必须是Staticfile。大概是因为Coding把这个文件作为静态部署的标志。

然后就可以用Hexo进行部署了,注意分支要和站点配置文件中写的一致。

至此,Coding和GitHub上托管的博客都可以访问了。

所以,现在要把百度站长平台上的链接改为Coding Pages的地址,重新验证就可以通过了。

站点地图

站点地图,又称网站地图,它是一个网站所有链接的容器。站点地图可以方便搜索引擎蜘蛛抓取网站页面,来清晰了解网站的架构。

首先使用以下命令进行安装生成谷歌和百度站点地图的插件。

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

然后生成你的博客

1
hexo g

如果在public目录下生成了sitemap.xmlbaidusitemap.xml,就说明成功了。
这时候可以打开这两个sitemap检查一下,如果baidusitemap.xml中的地址指向GitHub,那么需要把它改成Coding的博客地址,否则百度是爬取不到的。

然后在百度站长地图中进入你的站点,选择网页抓取——连接提交——自动提交——sitemap,填写你的sitemap地址,提交即可。

百度提交站点地图

通过站点地图,搜索引擎会定期爬取你的网站内容,所以需要及时更新你的站点地图。

除了站点地图,百度还提供了另外三种提交链接的方式:

  • 主动推送:将你的所有链接写入一个文本文件,然后通过curl、post等方式将这个文件推送给百度,能使新链接及时被百度收录。
  • 自动推送:将自动推送的js代码放在每个页面中,当这些页面被访问时,就会自动推送给百度了。
  • 手动提交:在站长平台页面上提交所有链接地址。

百度收录

要被百度收录相对比较困难。。光提交站点地图可能很慢,所以可以选择上述主动提交的方式,参照站长平台上的说明。

百度自动提交

谷歌收录

谷歌比较方便,进入Google Search Console,添加站点,通过验证后进入站点,选择抓取——站点地图——添加/测试站点地图

谷歌添加站点地图

提交过后一两天,谷歌就可以搜索到我的博客了,还是很快的。

总结

Hexo搭建博客十分方便,还可以继承各种第三方服务,但是为了装逼,想被搜索引擎搜索到的话,就需要给百度、谷歌收录,还需要同时部署到GitHub和Coding上。另外,百度收录真的很慢。。

参考

hexo干货系列:(六)hexo提交搜索引擎(百度+谷歌)