Blog - Hexo+Fluid & GitHub 搭建个人博客
Introduction
Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
本文章演示的过程基于虚拟机Windows 7旗舰版系统。
Before Starting
注册GitHub账户
官网地址:GitHub
下载所需工具(设置好安装目录后,一路下一步)
nodejs(win7支持版本:node-v13.14.0-x64)
git(Git-2.34.0-64-bit)
安装完毕后,使用快捷键
win+R
,输入cmd
打开命令行,并分别输入以下命令来测试是否安装成功1
2
3node -v
npm -v
git --version安装淘宝源cnpm
1
npm install -g cnpm --registry=https://registry.npm.taobao.org
下载Hexo
1
npm install hexo-cli -g
检查Hexo版本号验证是否安装成功
1
hexo -v
Work it out
关联SSH
登录GitHub
新建一个Repository
名称:
[user_name].github.io
桌面右键,点击
git bash here
输入ssh检测ssh是否安装
1
ssh
使用命令行创建ssh key
1
ssh-keygen -t rsa -C "[user_mail]"
连续按4次回车
进入到
C:\user\[name]\.ssh\id_rsa.pub
(用记事本打开,复制密钥)找到
GitHub -> Setting -> SSH and GPG keys
新建一个
SSH Key
(名称随意)粘贴复制出来的Key
在
Git
中输入命令测试ssh是否绑定成功1
ssh -T git@github.com
# 错误提示:Time out
进入~/.ssh下,创建config
1
vi config
编辑文件内容
1
2
3
4
5
6
7
8
9
10
11
12
13Host github.com
User git
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443
Host gitlab.com
Hostname altssh.gitlab.com
User git
Port 443
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
创建本地博客
新建一个目录(用于存放博客文件夹),进入到目录,右键
git bash here
初始化hexo
1
hexo init
生成本地页面,进入本地端口预览效果
1
2# hexo server
hexo s
主题配置(以Floid为例)
# 第三方开源主题可以自己按照文档配置
Hexo 5.0.0 版本以上,推荐通过 npm 直接安装,进入博客目录执行命令:
1 |
|
指定主题
如下修改 Hexo 博客目录中的 _config.yml
:
1 |
|
创建「关于页」
首次使用主题的「关于页」需要手动创建:
1 |
|
创建成功后修改 /source/about/index.md
,添加 layout
属性。
修改后的文件示例如下:
1 |
|
WARNING
layout: about
必须存在,并且不能修改成其他值,否则不会显示头像等样式。
更新主题
在博客目录下执行命令:
1 |
|
详情请见:Hexo Floid 用户手册
发布到GitHub
deployment文件配置
blog目录找到
_config.yml
修改最后一行
deployment
配置1
2
3
4deploy:
type: git
repository: [仓库ssh地址] # 在仓库页code下找到链接
branch: main
部署到GitHub
blog文件夹右键git bash here
安装hexo-deployer-git自动部署发布工具
1
npm install hexo-deployer-git --save
生成blog页面命令
1
2# hexo generate
hexo g部署到GitHub命令
1
2# hexo deploy
hexo d部署完成后,在浏览器输入页面地址已访问blog
1
https://[username].github.io
# 如果访问不了,可以刷新dns缓存
cmd控制台输入
1
ipconfig/flushdns
After Building
文章创建
创建markdown文件
1
hexo new [layout[post, draft, page]] "[title]"
layout布局:post(文章)、draft(草稿)、page(页面)
启动服务器时加上
--draft
来查看草稿1
hexo server --draft
还可以在站点配置文件中把
render_drafts
参数设为true
来预览草稿。我们可以通过
publish
命令将草稿发布文章或者页面,它将会被移动到指定的文件夹。1
hexo publish [layout] "[title]"
Front-matter
当我们创建一个md文件后,打开后会看到一些内容,这些称为
Front-matter
,它是文件最上方以---
分隔的区域,用于指定个别文件的变量,举例来说:1
2
3
4---
title: Hello World # 标题就是我们上面创建的时候指定的名字
date: 2013/7/13 20:46:25 # 文件创建的时间
---在
Typora
中我们在md文件的首行(必须是第一行)输入---
,然后按回车就可以插入Front-matter
了。Front-matter预定义参数
1
2
3
4
5
6
7
8
9
10
11layout 布局 默认为true,如果你不想你的文章被处理,可以设置为false
title 标题 标题会显示在最上方居中位置
date 建立日期 如果不指定则为默认值-文件创建日期,可以自定义。
update 更新日期 如果不指定则为默认值-文件修改后重新生成静态文件的日期。
comments 是否开启文章的评论功能 默认值为true
tags 标签(不适用于页面page布局)
categoreies 分类(不适用于页面page布局)
permalink 覆盖文章网址
keywords 仅用于 meta 标签和 Open Graph 的关键词(不推荐使用)
excerpt 用于Fluid主题中的摘要
comment bool 开启评论
常用命令
清除缓存:
hexo clean
生成静态文件:
hexo generate
可简写为hexo g
启动本地服务器:
hexo server
可简写为hexo s
,常用参数-p(--port)
重设端口部署到云服务器:
hexo deploy
可简写为hexo d
,用于将网站部署到服务器上。
常用参数:-g(--generate)
,hexo d -g
部署前预先生成静态文件,等同于hexo g -d
一般发布文章或者修改博客后需要这些操作:清除缓存>生成静态文件>启动服务器,测试没问题后再部署。
1
2
3# 我们可以写成一条命令
hexo clean && hexo g && hexo s
hexo d详情请见:Hexo官方文档