利用Hexo在Github Pages上搭建个人博客

概述:使用Hexo博客框架,将本地Markdown文件渲染成html网页,再通过GitHub平台完成博客的发布。

步骤与内容

  1. 首先进行Hexo的安装。根据官方文档,到官网上下载Node.jsGit,并配置相关的环境。
    alt text
    alt text
    配置好环境后进行Hexo的安装,使用npm安装hexo-cli(npm install -g hexo-cli),然后进行初始化(在指定文件夹下执行hexo init blog)并在本地启动hexo(在“blog”文件夹下执行hexo server)。
    alt text
    alt text
    访问localhost:4000,看到以上界面说明本地Hexo服务搭建成功。
  2. 在本地部署成功后,上传到GitHub进行部署,首先连接GitHub,使用Git设置用户名和邮箱(git config --global user.name "GitHub 用户名" git config --global user.email "GitHub 邮箱"),然后创建ssh密钥(ssh-keygen -t rsa -C "GitHub 邮箱"),并在GitHub中添加该密钥,通过ssh -T git@github.com命令验证连接。
    alt text
  3. 创建GitHub Pages仓库。部署到网址GitHub用户名.github.io上。最后使用npm安装插件hexo-deployer-git(npm install hexo-deployer-git --save),修改配置后执行hexo deploy命令,将网站上传到GitHub Pages。最终实现博客的搭建。
    alt text
  4. 撰写文章并发布
    • 在“blog”文件夹下打开Git,输入hexo new "文章标题",创建文件
    • 编辑“文章标题.md”文件,使用hexo server本地预览
    • hexo clean清理,hexo generate生成,hexo deploy部署到GitHub

遇到的问题

  1. 在创建ssh密钥时,如果生成的密钥没有保存在默认文件“id_rsa”下,会报错Permission denied (publickey),需要修改同一文件夹下的“config”文件,添加以下内容:
    1
    2
    3
    Host github.com
    HostName github.com
    IdentityFile ~/.ssh/id_rsa_github # 自定义的文件路径
  2. 安装hexo-deployer-git插件时,如果安装不成功,需要用cnpm进行安装,执行npm install -g cnpm -registry=https://registry.npmmirror.com安装cnpm,然后再执行cnpm install hexo-deployer-git --save,成功安装。
  3. 在.md文件中插入图片,但网页上不显示。安装hexo-asset-image插件;修改hexo-asset-image的index.js,参考链接;将_config.yml文件中的post_asset_folder设置为true;将.md文件中所需的图片放入同一目录下的同名文件夹中。
  4. 文章中的公式无法渲染,需要卸载Hexo默认的渲染插件npm uninstall hexo-renderer-marked --save,安装新插件npm install hexo-renderer-markdown-it-katex,然后在_config.yml下添加markdown配置。

结论分析与体会

Hexo是一个快速、简洁且高效的博客框架,并且部署比较方便,将博客托管在GitHub上,使得版本控制和协作变得十分便捷,使用Hexo和GitHub实现个人博客的搭建,使得创建和管理个人博客十分容易。通过这次个人博客的搭建过程也让我对环境部署与配置以及资料查阅能力有了更多的锻炼。

参考资料

https://hexo.io/zh-cn/docs/
https://zhuanlan.zhihu.com/p/60578464
https://wangwei1237.github.io/2020/02/05/handle-the-bug-of-hexo-asset-image-plugin/