Hexo 入门教程
条评论晚上把搭好的博客发给了我的 Best Gay Friend 看,本来只是想赚一下浏览量,但基友说也想搭一个类似的博客系统。 寻思着可以写一篇利用 Github Pages 搭建 Hexo 博客系统的入门教程,既可以增加一篇“凑字数”的博客,又可以急基友之所急。
Hexo 的安装及使用
Hexo 的安装很简单,只用一条命令即可搞定:
npm install hexo-cli -g |
安装完之后就可以用下面的命令来初始化一个博客:
hexo init blog |
然后用 hexo server -o
在本地打开对应的博客网站。 这些在 Hexo 官网上都有介绍。
自定义Hexo
可以通过编辑 blog/_config.yml
文件来对你的博客网站进行配置,例如:
title: 始于珞尘 |
也可以修改博客的主题:
theme: maupassant-hexo |
主题 maupassant
的具体安装方法可以参考它的 官方文档。
自定义 maupassant 主题
- 启用博客阅读数统计:
busuanzi: true
- 启用对应的 Comment 插件:gitalk, gitment、valine
增加统计功能
基于这个文档添加总阅读数的统计:
在
after_footer.pug
文件中加入以下代码:if theme.busuanzi == true
script(src='https://dn-lbstatics.qbox.me/busuanzi/2.3/busuanzi.pure.mini.js', async)在
footer.pug
文件中加入以下代码if theme.busuanzi == true
div
| Total
span#busuanzi_container_site_pv
span= ' '
span#busuanzi_value_site_pv
span(rel='nofollow')= ' ' + __(' hits, ')
span#busuanzi_container_site_uv
span#busuanzi_value_site_uv
span(rel='nofollow')= ' ' + __(' visitors. ')
通过友盟添加站长统计信息. 注册完成后添加你的博客域名, 然后进入获取代码页面, 复制你期望的样式的代码, 去除掉代码中的 script tag, 把代码放到文件 footer.pug
中:
div |
设置完成后可以看到类似下图的效果:
这里 是完整的代码文件.
部署 Hexo 博客到 Github Pages
要使用 Github Pages 首先需要你建一个名称为 your-github-id.github.io
的 repository,同时需要在 repository 的设置里开启 Github Pages 功能。
然后在 blog
目录里安装 hexo deploy 插件:
npm install hexo-deployer-git --save |
在 _config.yml
文件里添加如下的配置:
deploy: |
最后执行 hexo generate -d
,大功告成!打开 http://your-github-id.github.io 就可以访问你的博客网站了!
使用 443 端口连接
有时 22 端口可能会被防火墙拦截, 这时执行 hexo deploy
时可能会遇到下面的错误信息:
fatal: Could not read from remote repository. |
这时我们可以利用 443 端口进行 ssh 连接. 修改 ~/.ssh/config
文件, 添加以下内容:
For Github:
Host github.com
hostname ssh.github.com
port 443
IdentityFile ~/.ssh/id_rsaFor coding.net (git-faq)
Host git.coding.net
hostname git-ssh.coding.net
port 443
IdentityFile ~/.ssh/id_rsa
强制开启 https
我们可以在 Github Pages 库里的设置中开启强制 https 功能, 这样当用户访问 http 的网页时 会自动重定向到 https 页面.
搜索引擎检索
为了让博客的内容能被百度和 Google 检索,首先需要生成对应的 sitemap:
npm install hexo-generator-sitemap --save |
分别在 百度站长工具 和 Google 站长工具 里对你的博客站点进行验证。
选择文件验证
的方式进行验证,把下载的文件放在 source
目录下,并对文件内容进行编辑,在文件首部加入如下内容:
|
这样就可以防止 Hexo 在生成博客网站时在验证文件里添加额外的内容,导致验证失败。
也可以在博客的配置文件里加入如下的配置来防止这些文件被渲染:
skip_render: |
具体的匹配规则可以参考这个 comment
当博客站点验证成功后便可以选择用 sitemap 的方式自动提交链接。对于百度,在站长平台工具里选择 “网页抓取–>链接提交–>自动提交–>sitemap”, 如下图所示:
对于 Google 择选择 “抓取–>站点地图–>添加站点地图”,如下图所示:
当做完所有这些操作之后可以通过 site:your-blog-site
这个搜索来验证你的博客有没有被百度和 Google 收录。 一般需要几天的时间才能保证你的博客被搜索引擎检索到。
利用 Hexo 部署 nodeppt 生成的 slides
我平时经常会用 nodeppt 来制作 slides, 它也是基于 markdown 文件来生成对应的 slides html 文件. 我们可以把 slides html 文件放在 hexo 中, 这样便可以实现在线的 slides, 方便和别人进行分享.
我把 slides 的入口地址放在了和 “关于” 平级的 tab 上, 如下图所示:
对于基于 maupassant 的主题, 可以在 menu
下面加上 Slides 入口:
menu: |
然后在 source/slides/src
中添加 markdown 源文件, 在目录 sources/slides
中使用 nodeppt generate src -a
生成对应的 html 文件.
当我们点击 Slides 的 tab 时便可进入如下的界面:
使用七牛作为图床
注册 七牛账户 并创建一个新的 bucket(选择华东区,否则下面提到的插件无法正常使用), 利用插件 markdown-img-upload 可以很方便地上传图片到七牛并插入图片引用到 Markdown 文件。
- 本文链接:https://hiberabyss.github.io/2017/03/13/hexo-tutorial/
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!