|
|
|
---
|
|
|
|
title: 使用Hexo搭建个人博客
|
|
|
|
abbrlink: 332630035
|
|
|
|
date: 2024-02-29 15:10:58
|
|
|
|
tags:
|
|
|
|
categories: 技术随笔
|
|
|
|
keywords:
|
|
|
|
description:
|
|
|
|
cover:
|
|
|
|
---
|
|
|
|
> 我之前的博客网站都是在自己的NAS中放的,使用CND使得可以使用80和443端口访问家里NAS的博客,但是因为DDNS更换IP不及时的缘故,每天要断开几分钟,家里偶尔又会停电,导致百度和Google的收录效果奇差。无奈只得放弃在NAS放置个人博客。
|
|
|
|
|
|
|
|
> 不在NAS中放置博客后,我最终采用了使用纯静态网页Hexo的方式,并且将静态网也放在了OSS中,本篇主要介绍Hexo个人博客的搭建,OSS的设置放在下一篇。
|
|
|
|
|
|
|
|
# 搭建Hexo
|
|
|
|
|
|
|
|
需要安装nodejs,到nodejs[官方网站](https://nodejs.org/en/download/current)下载最新的node并安装。
|
|
|
|
|
|
|
|
随后打开命令提示符,找到合适的位置依次输入如下命令:
|
|
|
|
|
|
|
|
```
|
|
|
|
npm config set registry https://registry.npmmirror.com/
|
|
|
|
npm install -g hexo
|
|
|
|
```
|
|
|
|
随后创建`个人博客`文件夹并进入文件夹
|
|
|
|
```bash
|
|
|
|
mkdir 个人博客
|
|
|
|
cd 个人博客
|
|
|
|
hexo init
|
|
|
|
hexo server
|
|
|
|
```
|
|
|
|
不出意外的话,此时我们就可以使用localhost:4000来访问博客了。
|
|
|
|
|
|
|
|
# 安装主题
|
|
|
|
Hexo默认的主题并不一定符合我们的审美,在这里推荐下[butterfly](https://github.com/jerryc127/hexo-theme-butterfly)主题,也是我目前在用的
|
|
|
|
如图,从butterfly[github地址](https://github.com/jerryc127/hexo-theme-butterfly/releases)下载主题后,解压并改名为butterfly后放在themes文件夹下。
|
|
|
|
|
|
|
|
<img src="https://img.dreamlyn.cn:8443/i/2024/02/29/180922.webp">
|
|
|
|
|
|
|
|
随后修改根目录的_config.yml文件,将theme改为butterfly:
|
|
|
|
```yaml
|
|
|
|
theme: butterfly
|
|
|
|
```
|
|
|
|
然后使用命令安装插件
|
|
|
|
```
|
|
|
|
npm install hexo-renderer-pug hexo-renderer-stylus --save
|
|
|
|
```
|
|
|
|
为了后续升级方便,我们在 hexo 的根目录创建一个文件 _config.butterfly.yml,并把butterfly目录的 _config.yml 所有内容复制到 _config.butterfly.yml 去。
|
|
|
|
|
|
|
|
# 网站配置
|
|
|
|
这里只给出一些基础的配置。
|
|
|
|
|
|
|
|
## 网站名称等配置
|
|
|
|
根据博客信息自行修改,其中url必须为博客所对应域名。
|
|
|
|
```yaml
|
|
|
|
# Site
|
|
|
|
title: 牧尘的NAS小站
|
|
|
|
subtitle: '最好用的NAS使用技巧'
|
|
|
|
description: 'NAS折腾不完全指南,定期分享一些好玩的东西,不定期记录生活。'
|
|
|
|
keywords:
|
|
|
|
author: 牧尘
|
|
|
|
language: zh-CN
|
|
|
|
timezone: ''
|
|
|
|
|
|
|
|
# URL
|
|
|
|
## Set your site url here. For example, if you use GitHub Page, set url as 'https://username.github.io/project'
|
|
|
|
url: https://www.dreamlyn.cn
|
|
|
|
```
|
|
|
|
|
|
|
|
## 配置文章链接
|
|
|
|
不修此配置博客也能正常使用,但当文章名为中文时,链接中容易出现中文,不利于百度收录
|
|
|
|
首先我们安装 hexo-abbrlink 插件
|
|
|
|
```
|
|
|
|
npm install hexo-abbrlink --save
|
|
|
|
```
|
|
|
|
随后修改配置
|
|
|
|
```yaml
|
|
|
|
permalink: :abbrlink.html
|
|
|
|
permalink_defaults:
|
|
|
|
abbrlink:
|
|
|
|
alg: crc32 #support crc16(default) and crc32
|
|
|
|
rep: dec #support dec(default) and hex
|
|
|
|
pretty_urls:
|
|
|
|
trailing_index: true # Set to false to remove trailing 'index.html' from permalinks
|
|
|
|
trailing_html: true # Set to false to remove trailing '.html' from permalinks
|
|
|
|
```
|
|
|
|
|
|
|
|
## 添加分类和标签中英文映射。
|
|
|
|
如果我们的分类或者标签中使用了中文,那么在网页中可能会出现中文url,不利于seo,在此我们进行映射
|
|
|
|
```
|
|
|
|
# Category & Tag
|
|
|
|
default_category: uncategorized
|
|
|
|
category_map:
|
|
|
|
Linux基础: linux
|
|
|
|
网络基础: network
|
|
|
|
NAS基础: nasbase
|
|
|
|
NAS服务: nasservice
|
|
|
|
技术随笔: other
|
|
|
|
tag_map:
|
|
|
|
Linux基础: linux
|
|
|
|
网络: network
|
|
|
|
NAS技术: nas
|
|
|
|
反向代理: rproxy
|
|
|
|
影音系统: video
|
|
|
|
```
|
|
|
|
|
|
|
|
## 新建分类页
|
|
|
|
|
|
|
|
1. `前往 Hexo 博客的根目录`
|
|
|
|
2. 输入 hexo new page categories
|
|
|
|
3. 你会找到 source/categories/index.md 这个文件
|
|
|
|
4. 修改这个文件,添加 type: "categories"
|
|
|
|
```
|
|
|
|
---
|
|
|
|
title: 分类
|
|
|
|
date: 2018-01-05 00:00:00
|
|
|
|
type: "categories"
|
|
|
|
---
|
|
|
|
```
|
|
|
|
|
|
|
|
## 新建分类页
|
|
|
|
1. 前往 Hexo 博客的根目录
|
|
|
|
2. 输入 `hexo new page tags`
|
|
|
|
3. 你会找到 source/tags/index.md 这个文件
|
|
|
|
4. 修改这个文件,添加 type: "tags"
|
|
|
|
```
|
|
|
|
---
|
|
|
|
title: 标签
|
|
|
|
date: 2018-01-05 00:00:00
|
|
|
|
type: "tags"
|
|
|
|
orderby: random
|
|
|
|
order: 1
|
|
|
|
---
|
|
|
|
```
|
|
|
|
|
|
|
|
## 新建友情链接页面
|
|
|
|
1. 前往 Hexo 博客的根目录
|
|
|
|
2. 输入 `hexo new page link`
|
|
|
|
3. 你会找到 source/link/index.md 这个文件
|
|
|
|
4. 修改这个文件,添加 type: "link"
|
|
|
|
```
|
|
|
|
---
|
|
|
|
title: 友情链接
|
|
|
|
date: 2022-02-22 10:34:50
|
|
|
|
type: 'link'
|
|
|
|
random: true
|
|
|
|
---
|
|
|
|
|
|
|
|
# 申请格式
|
|
|
|
>< 博客名称 + 博客地址 + 博客Logo + 博客简介 >
|
|
|
|
>博客名称:
|
|
|
|
>博客地址:
|
|
|
|
>博客Logo:
|
|
|
|
>博客简介:
|
|
|
|
>(在评论中留言即可)
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
> 关于Hexo的配置还有很多,本文无法全部列出,其余配置请参照butterfy提供的中文文档,小伙伴们有哪些配置不清楚的可以在评论区留言。
|
|
|
|
# 其他常用插件
|
|
|
|
|
|
|
|
## 添加sitemap
|
|
|
|
|
|
|
|
安装依赖
|
|
|
|
```bash
|
|
|
|
λ cnpm install hexo-generator-sitemap --save #sitemap.xml适合提交给谷歌搜素引擎
|
|
|
|
λ cnpm install hexo-generator-baidu-sitemap --save #baidusitemap.xml适合提交百度搜索引擎
|
|
|
|
```
|
|
|
|
然后在Hexo配置文件_config.yml中添加以下代码
|
|
|
|
```yaml
|
|
|
|
# google 百度收录
|
|
|
|
sitemap:
|
|
|
|
path: sitemap.xml
|
|
|
|
baidusitemap:
|
|
|
|
path: baidusitemap.xml
|
|
|
|
```
|
|
|
|
## 百度主动推送
|
|
|
|
|
|
|
|
安装依赖
|
|
|
|
```bash
|
|
|
|
λ cnpm install hexo-baidu-url-submit --save
|
|
|
|
```
|
|
|
|
然后在Hexo配置文件_config.yml中添加以下代码
|
|
|
|
```yaml
|
|
|
|
baidu_url_submit:
|
|
|
|
count: 3 ## 比如3,代表提交最新的三个链接
|
|
|
|
host: www.dreamlyn.cn ## 在百度站长平台中注册的域名
|
|
|
|
token: your_token ## 请注意这是您的秘钥, 请不要发布在公众仓库里!
|
|
|
|
path: baidu_urls.txt ## 文本文档的地址, 新链接会保存在此文本文档里
|
|
|
|
```
|
|
|
|
|
|
|
|
### 生成订阅
|
|
|
|
|
|
|
|
安装依赖
|
|
|
|
```bash
|
|
|
|
λ cnpm install hexo-generator-feed --save
|
|
|
|
```
|
|
|
|
然后在Hexo配置文件_config.yml中添加以下代码
|
|
|
|
```yaml
|
|
|
|
#RSS 订阅
|
|
|
|
feed:
|
|
|
|
type: atom
|
|
|
|
path: atom.xml
|
|
|
|
limit: 20
|
|
|
|
hub:
|
|
|
|
```
|