搭建个人博客

目录

  1. [准备工作](### 准备工作)
  2. 安装 Hexo
  3. 创建博客
  4. 将博客部署到 GitHub
  5. 创建新的导航界面、分类和标签
  6. 常见问题解决

1. 准备工作

1.1 安装 Node.js

  • 官网下载:Node.js 官网

  • 安装完成后,在命令行中验证安装:

    1
    2
    node -v
    npm -v

1.2 安装 Git

  • 官网下载:Git 官网

  • 安装完成后,验证安装:

    1
    git --version

1.3 注册 GitHub 账号

  • 访问 GitHub 官网 注册并创建一个新的 GitHub 账号。

2. 安装 Hexo

2.1 本地创建博客目录

首先,创建一个名为 myblog 的目录:

1
2
mkdir myblog
cd myblog

2.2 安装 Hexo

myblog 目录下,运行以下命令安装 Hexo:

1
npm install -g hexo-cli

2.3 初始化 Hexo 博客

myblog 目录下运行 Hexo 初始化命令:

1
hexo init

此命令会生成一些初始文件和目录,包括:

  • _config.yml:站点配置文件,用于修改主题和部署配置。
  • source:存放博客文章和页面源文件。
  • themes:Hexo 主题目录。
  • public:生成的静态文件,部署到 GitHub 页面。

2.4 选择和安装主题

选择一个主题,这里以 Pure 主题为例:

1
git clone https://github.com/cofess/hexo-theme-pure themes/pure

然后修改站点配置文件 _config.yml 中的 theme 设置为 pure

1
theme: pure

在主题配置文件中,你可以修改站点名、作者、头像等个人信息。


3. 创建博客

3.1 创建新文章

在博客目录下(如:F:\myblog\blog)运行以下命令来创建新文章:

1
hexo new "文章标题"

你也可以手动创建一个 Markdown 文件,并放到 source/_posts/ 目录下,添加以下头信息:

1
2
3
4
5
6
7
8
9
---
title: "文章标题"
date: 2025-08-07 20:30:00
categories:
- 学习笔记
tags:
- 论文阅读
- 研究方法
---

3.2 使用文本编辑器编写文章

你可以使用任何文本编辑器(如 Typora)来编写博客文章,保存为 .md 格式。

3.3 本地预览博客

在博客目录下运行以下命令进行本地预览:

1
hexo s

然后打开浏览器,访问 http://localhost:4000 查看预览效果。


4. 将博客部署到 GitHub

4.1 创建 GitHub 仓库

  • 登录 GitHub,创建一个新的仓库,仓库名称必须是 用户名.github.io
  • 仓库类型选择 Public

4.2 安装 Hexo Git 部署插件

运行以下命令安装 hexo-deployer-git 插件:

1
npm install hexo-deployer-git --save

4.3 配置 SSH 密钥

为了使用 SSH 来部署,你需要配置 SSH 密钥:

1
2
3
git config --global user.name "your_username"
git config --global user.email "your_email@example.com"
ssh-keygen -t rsa -C "your_email@example.com"

生成密钥后,查看公钥内容:

1
cat ~/.ssh/id_rsa.pub

将公钥复制到 GitHub:

  • 登录 GitHub,进入 Settings -> SSH and GPG keys -> New SSH key
  • 粘贴公钥并保存。

4.4 配置部署设置

在 Hexo 的 _config.yml 文件中,配置部署部分:

  • 使用 SSH 部署:
1
2
3
4
deploy:
type: git
repo: git@github.com:your_username/your_username.github.io.git
branch: main
  • 使用 HTTPS 部署:
1
2
3
4
deploy:
type: git
repo: https://github.com/your_username/your_username.github.io.git
branch: main

4.5 部署博客

生成静态文件并上传到 GitHub:

1
2
hexo clean
hexo g --d

部署完成后,你的博客应该能通过 https://your_username.github.io 访问。


5. 创建新的导航界面、分类和标签

5.1 创建新页面

在 Hexo 项目目录下创建分类和标签页面:

1
2
hexo new page categories
hexo new page tags

5.2 配置页面类型和布局

source/categories/index.mdsource/tags/index.md 文件中,添加以下内容:

1
2
3
4
type: "categories"
layout: "categories"
type: "tags"
layout: "tags"

5.3 添加分类和标签

在每篇博客的头部信息(Front-matter)中,添加分类和标签:

1
2
3
4
5
categories:
- 学习笔记
tags:
- Hexo
- 博客搭建

6. 常见问题解决

6.1 问题:npm 运行时报错“因为在此系统上禁止运行脚本”

解决办法

参考:npm 运行时报错“因为在此系统上禁止运行脚本”解决办法_npm n因为在此系统上禁止运行脚本-CSDN博客

这是因为 Windows 系统的 PowerShell 执行策略 默认禁止执行脚本。你可以通过以下步骤解决:

  1. 打开 PowerShell(以管理员身份)。

  2. 输入以下命令以查看当前的执行策略:

    1
    Get-ExecutionPolicy

    如果显示的是 Restricted,则表示 PowerShell 阻止了脚本的执行。

  3. 运行以下命令来允许执行脚本:

    1
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
    • RemoteSigned 允许本地脚本执行,但对于从互联网下载的脚本要求它们必须有一个有效的签名。
    • -Scope CurrentUser 只会改变当前用户的设置,避免修改全局设置。
  4. 输入 Y 确认更改。

  5. 重新运行 npm install,问题应该解决。

6.2 问题:GitHub 配置 SSH 密钥的步骤

参考:Github配置ssh key的步骤(大白话+包含原理解释)_github生成ssh key-CSDN博客

解决步骤

1. SSH 密钥是什么?
  • SSH 密钥是一对加密的密钥(公钥和私钥),用来验证你和 GitHub 之间的连接。通过使用 SSH 密钥,你不需要每次推送代码时都输入 GitHub 的用户名和密码,它提供了更安全、快捷的认证方式。
2. 生成 SSH 密钥
  1. 打开 PowerShell命令行

  2. 运行以下命令来生成一个新的 SSH 密钥对:

    1
    ssh-keygen -t rsa -C "youremail@example.com"
    • -t rsa 指定使用 RSA 算法生成密钥。
    • -C "youremail@example.com" 为密钥添加一个注释(通常是你的电子邮件)。
  3. 系统会询问你将密钥保存在哪个位置。直接按回车键即可将密钥保存在默认位置:

    1
    C:\Users\YourUsername\.ssh\id_rsa
  4. 接着,系统会询问你是否为密钥设置密码。如果你希望每次使用时都输入密码,可以设置;如果不想每次输入密码,直接按回车即可。

3. 查看公钥内容
  1. 生成 SSH 密钥对后,公钥会保存在文件 id_rsa.pub 中。查看公钥内容:

    1
    cat ~/.ssh/id_rsa.pub
  2. 将显示的公钥内容复制。

4. 将公钥添加到 GitHub
  1. 登录到 GitHub 网站。
  2. 点击右上角的头像,选择 Settings
  3. 在左侧菜单中选择 SSH and GPG keys
  4. 点击 New SSH key
  5. Title 中输入一个名称(例如:My Laptop),然后将复制的公钥粘贴到 Key 区域。
  6. 点击 Add SSH key 保存。
5. 测试 SSH 连接
  1. 打开 PowerShell命令行,输入以下命令来测试是否成功连接到 GitHub:

    1
    ssh -T git@github.com
  2. 如果连接成功,你会看到如下信息:

    1
    Hi your_username! You've successfully authenticated, but GitHub does not provide shell access.

    这表示你已经成功配置了 SSH 密钥,并能通过 SSH 连接到 GitHub。

6. 使用 SSH 部署 Hexo

现在,你可以在 Hexo 的 _config.yml 文件中配置部署信息,使用 SSH 来部署博客:

1
2
3
4
deploy:
type: git
repo: git@github.com:your_username/your_username.github.io.git
branch: main

通过这些步骤,即可成功配置 GitHub 的 SSH 密钥,并且可以通过 SSH 连接 GitHub 和部署你的 Hexo 博客。