0%

使用Hexo+Github搭建博客网站(Mac)

Hexo官方网址与文档

官网:
https://hexo.io/
官方文档:
https://hexo.io/zh-cn/docs/

工具下载和安装

Node.js

下载地址:
https://nodejs.org/dist/v18.14.2/node-v18.14.2.pkg

Git

在App Store中下载Xcode,附带Git

验证

node -v
npm -v
git --version

Hexo

npm install hexo-cli -g
验证
hexo -v

Github仓库搭建

地址:
https://github.com/
新建仓库:
仓库名:xxx.github.io
Public
Add a README file

SSH keys生成与关联

终端,验证SSH是否已安装:
ssh
生成ssh文件:
ssh-keygen -t rsa -C "Github注册时的邮件地址"
四次enter键后完成
如果在整个过程中如果权限不足就切换管理员:
sudo su
公钥路径:
/Users/XXX/.ssh/id_rsa.pub
打开后全文复制
进入Github-右上角头像-Settings-SSH and GPG keys-New SSH key
Title任意,Key中粘贴id_rsa.pub全文
测试ssh是否绑定成功:
ssh -T git@github.com

本地博客生成

本地新建文件夹,如
/Users/XXX下新建文件夹Blog
选中该文件夹,右键-option-新建位于文件夹位置的终端窗口
初始化hexo:
hexo init
生成:
hexo g
启动服务:
hexo s
localhost:4000可访问本地博客
Ctrl+C关闭

发布博客到互联网

在Blog文件夹下找到_config.yml文件
在最后增加:
deploy: 
  type: git
  repo: 仓库地址
  branch: main
冒号为英文冒号,后有一个空格,仓库地址在Github-仓库-code-https中找到
安装:
npm install hexo-deployer-git --save
生成:
hexo g
发布:
hexo d
验证账号:用户名为Github用户名,密码为令牌(Github-Developer Settings-personal access tokens,新建令牌,权限全选)

网站管理与维护

域名绑定

域名解析:
cname www 记录值:xxx.github.io
A @ 记录值:ip
ip通过ping xxx.github.io获得
在Blog/source文件夹下新建一个名为CNAME的文件,其中写入域名
然后进入github-仓库-settings-pages-Custom domain,输入域名,勾选Enforce HTTPS,然后Save

网站信息配置

可在_config.yml中修改大部分的网站配置
title 网站标题
subtitle 网站副标题
description 网站描述,主要用于SEO
keywords 网站的关键词。支持多个关键词。
author 博客作者的名字
language 网站使用的语言。对于简体中文用户来说,使用不同的主题可能需要设置成不同的值,请参考主题的文档自行设置,常见的有 zh-Hans和 zh-CN
timezone 网站时区。Hexo 默认使用电脑的时区。请参考 时区列表 进行设置,如 America/New_YorkJapan, 和 UTC 。一般的,对于中国大陆地区可以使用 Asia/Shanghai

修改主题

next主题:
在Blog文件夹中打开终端:
git clone https://github.com/theme-next/hexo-theme-next themes/next
在_config.yml中修改theme为next
进行本地预览:
hexo s
next主题的使用教程:
NexT 使用文档 (iissnan.com)
hexo搭建个人博客–NexT主题优化 - 简书 (jianshu.com)

新建文章

全文截断:

tag格式:
categories格式:
新建文章:
hexo new 文章标题
生成页面:
hexo g
上传页面:
hexo d

添加标签页面

新建页面tags:
hexo new page tags
在tags页面中增加:
type: "tags"
在next主题配置中添加 tags 到 menu
然后 hexo g & hexo d

添加分类页面

新建页面tags:
hexo new page categories
在tags页面中增加:
type: "categories"
在next主题配置中添加 categories 到 menu
然后 hexo g & hexo d

添加关于页面

新建页面about:
hexo new page about
在tags页面中增加:
type: "about"
在next主题配置中添加 categories 到 menu
然后 hexo g & hexo d

备份与迁移

需要备份和迁移的内容:

  • _config.yml:站点配置
  • package.json:说明使用那些包
  • scaffolds:文章的模板
  • source:自己写的博客文件
  • themes:主题
  • .gitignore:限定在提交的时候哪些文件可以忽略