利用Hexo搭建博客

参考文章

算是一次自己成功尝试的记录

Github创建个人仓库

点击GitHub中的New repository创建新仓库,仓库名应该为:用户名.github.io 这个用户名使用自己的GitHub帐号名称代替

安装Git

任意位置右键选择Git Bash Here
图片名称

1
2
git config --global user.name xuedue  #改成你的GitHub用户名  
git config --global user.email 1515****06@qq.com #改成你自己的GitHub注册邮箱"

生成ssh密钥文件:

1
ssh-keygen -t rsa -C 1515****06@qq.com #改成你自己的GitHub注册邮箱

然后直接三个回车即可,默认不需要设置密码
然后找到生成的.ssh的文件夹中的id_rsa.pub密钥,打开文件并复制内容

打开GitHub_Settings_keys 页面,新建new SSH Key

Title为标题,随便填,将上面复制的id_rsa.pub的内容粘贴进去,最后点击Add SSH key。
在Git Bash中检测GitHub公钥设置是否成功,输入 ssh git@github.com ,有如下显示就算成功
1626879148_1_.jpg

安装Node.js和npm

安装完Node.js会自动安装npm,并填入系统路径,在cmd中查看版本验证是否安装正确

image.png

安装Hexo并初始化博客文件夹

  • 安装Hexo
    打开cmd窗口,输入下面命令:
    1
    npm install -g hexo-cli 
  • 初始化博客文件夹
    在cmd窗口进入你想要创建博客文件夹的位置,并输入下面命令:
    1
    hexo init blog(博客文件夹的名字)  

进入博客文件夹中,如果用上述命令,则cd blog
网站这时候已经建立好,可以通过命令

1
2
hexo g  
hexo s

这时候访问 localhost:4000,就可以看到自己的网页了

hexo常用命令

1
2
3
npm install hexo -g #安装Hexo  
npm update hexo -g #升级
hexo init #初始化博客

命令简写

1
2
3
4
5
6
7
8
9
10
hexo n article_name == hexo new article_name #新建文章  
hexo new page page_name #新建页面
hexo g == hexo generate #生成
hexo s == hexo server #启动服务预览
hexo d == hexo deploy #部署
hexo server #Hexo会监视文件变动并自动更新,无须重启服务器
hexo server -s #静态模式
hexo server -p 5000 #更改端口
hexo server -i 192.168.1.1 #自定义 IP
hexo clean #清除缓存,若是网页正常情况下可以忽略这条命令

发布网站

打开博客文件夹根目录的_config.yml文件,修改最后的Deployment,把repo改为自己的仓库路径
image.png
保存文件,然后安装Git部署插件

1
npm install hexo-deployer-git --save 

然后输入hexo命令将网站部署

1
2
3
hexo clean  
hexo g
hexo d

可能出现的问题

这里可能会出现 OpenSSL SSL_read: Connection was reset, errno 10054 的问题
打开Git执行

1
git config --global http.sslVerify "false"

之后浏览器访问 XXX.github.io 就能访问到我们的网站了

更换主题

找到喜欢的主题的github界面,执行命令

1
git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/butterfly

上面的链接就是你自己找的主题的GitHub链接,后面就是git clone到当前目录的什么文件夹下,注意这里要在博客的根目录下执行,因为命令中已经加了themes/

然后打开根目录下的_config.yml文件,修改其中的Themes
image.png

修改保存后,再次进行部署

1
2
hexo g  
hexo d

进入网站查看部署效果。

Hexo 报错

type: 'expected variable end'

hexo s调试时报上述错误
原因是文中内容存在连续的大括号(通常是由于公式内容),导致hexo解析失败,只需要在连续的中括号(左右都要)中间加上一个空格号。