Hexo博客搭建全面指南+基于NexT的优化

HexoHexo 是一个优秀的轻量级博客系统,本身可以兼容各种功能

而 NexTNexT,则是一个集成有非常多功能、并且兼容性极好

因此本文选择了 Hexo+NexTHexo+NexT 的搭配

第一部分: HexoHexo 简介

Hexo是一款基于Node.js的静态博客框架,依赖少易于安装使用,可以方便的生成静态网页托管在GitHub和Coding上,是搭建博客的首选框架。可以进入hexo官网进行详细查看(毕竟官方文档很有用),因为Hexo的创建者是台湾人,对中文的支持很友好,可以选择中文进行查看。

第二部分: 配置 HexoHexo

1. 安装 GitGit

Git是目前世界上最先进的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。也就是用来管理你的hexo博客文章,上传到GitHub的工具。

请到官网下载,然后打开 Git BashGit Bash命令行工具

安装完成后,使用 git version 验证版本

正确显示应该是这样的,版本因人而异

2. 安装 Node.JSNode.JS

Hexo基于Node.JS,因此需要安装Node.Js和npm工具。

选择 LTSLTS 版本即可

这样一来,就可以使用Git Bash来代替cmd

3. 安装 HexoHexo

你需要在Git Bash中使用此命令安装Hexo

1
npm install -g hexo-cli

然后使用 hexo -v 查看版本验证安装

 

之后初始化Hexo并且创建存储博客本地文件的文件夹

1
hexo init myblog    //初始化

处是你的博客本地文件夹的名字,写什么都可以
1
2
3
4
然后执行下面的命令
```bash
cd myblog //进入这个myblog文件夹
npm install

 

注意这些命令只能一次输入一条。粘贴需要在Git Bash窗口右键

因为自带 LandscapeLandscape 主题,因此这个时候就可看到你的博客了!

1
2
hexo generate   //可以缩写成 hexo g
hexo server //可以缩写成 hexo s

说一个小诀窍:你可以hexo g && hexo s,一步到位

4. 创建 GitHubGitHub个人仓库

登录你的GitHub账号,创建一个新的仓库(没有账号的、不会创建的请自行BFS)

仓库名创建为 你的用户名.github.io,不然无法识别

afqJDe.png

选择Public

5. 生成 SSHSSH 并添加到 GitHubGitHub

1
2
3
4
5
6
7
8
9
git config --global user.name yourname
git config --global user.email youremail
```
```yourname``` 就是你的GitHub用户名,```youremail``` 是你的GitHub的注册邮箱。这是Github用来验证账户的。

可以用下面的命令检查输入是否正确
```bash
git config user.name
git config user.email

接下来创建SSH,全部点回车就可以了

1
ssh-keygen -t rsa -C "youremail"

你会在大概会在C:\Users\Administrator中找到这个文件夹,用记事本打开。

 

ssh,简单来讲,就是一个秘钥,其中,id_rsa是你这台电脑的私人秘钥,不能给别人看的,id_rsa.pub是公共秘钥,可以随便给别人看。把这个公钥放在GitHub上,这样当你链接GitHub自己的账户时,它就会根据公钥匹配你的私钥,当能够相互匹配时,才能够顺利的通过git上传你的文件到GitHub上。

而后在GitHub的setting中,找到SSH keys的设置选项,点击New SSH key
把你的id_rsa.pub里面的信息复制进去。

用下面的代码验证 (无需改动)

1
ssh -T git@github.com

 

6. 将 HexoHexo 部署到

打开站点配置文件 _config.yml,翻到最后,修改YourgithubName为你的GitHub账户

1
2
3
4
deploy:
type: git
repo: https://github.com/YourgithubName/YourgithubName.github.io.git
branch: master

 

安装 deploy-gitdeploy-git 部署工具以部署到 GithubGithub

1
npm install hexo-deployer-git --save

 

然后执行

1
2
3
hexo clean      //清除之前生成的东西 缩写为hexo cl
hexo generate //生成静态文章 缩写为hexo g
hexo deploy //部署 缩写为hexo d

 

另外说一下,生成和部署可以合为 hexo g -d 。

现在,你可以打开 source\_posts,在里面创建Markdown文件,可以在里面写文章了!


第三部分: HexoHexo 基本操作

1. 设置网站的基本框架

参数描述注释
title 网站标题
subtitle 网站副标题
description 网站描述
author 您的名字
language 语言
timezone 时区
url 网址 改成你的网站域名
root 网站根目录 不用修改
permalink 文章的永久链接格式
permalink_defaults 永久链接中各部分的默认值

2. Page(创建新页面)

1
hexo new page 页面名称

系统会自动给你在博客根目录下的 source 文件夹中生成一个新的文件夹,里面有一个 index.md,页面的编辑操作在此文件中进行。

3. Draft(草稿)

1
hexo new draft newpage

这样会在 source/_draft 中新建一个 newpage.md 文件,如果你的草稿文件写的过程中,想要预览一下,那么可以使用

1
hexo server --draft

在本地端口中开启服务预览。

 

如果你的草稿文件写完了,想要发表到post中,下面的代码就会自动把newpage.md发送到post中。

1
hexo publish draft newpage

 

第四部分: HexoHexo 优化

1. 更换主题

在这里,窝推荐两款主题

  • ShanaShana 非常优秀的二次元主题。缺点是集成的功能比较少,需要自己读代码写文件(开发者似乎大学毕业了,回issue回答比较慢),而且开发者的主要开发方向是PC端
  • NexTNexT 非常优秀、功能极为强大、易于操作的主题。如果喜欢各种效果实现各种功能,选择这个会比较方便,移动端效果比较好

由于我现在已经不用Shana主题了,所以用我正在用的NexT主题来说一下

NexT官方文档 NexT是有中文文档的。参照官方文档即可

下载主题

有两种方法下载NexT:使用git克隆最新版本和下载稳定版本的压缩包(.zip)

1
git clone https://github.com/iissnan/hexo-theme-next themes/next

 

启用主题

提前声明一下:```站点配置文件```是你博客根目录下的```_config.yml```文件,```主题配置文件```是next主题文件夹下的```_config.yml```文件

打开 thmems\next,找到 站点配置文件 (_config.yml)。搜索找到 theme: 字段,把后面的 landscape 改成 next

1
theme: next

 

执行 hexo cl 清除缓存。之后执行 hexo s 便可以在 localhost:4000 中看到博客的预览效果了

其他内容

请自行阅读NexT官方文档

2. 添加 RSSRSS 订阅功能

可以参照我的这篇文章

安装feedfeed插件

HexoHexo博客有一个专门生成RSS xmlRSS xml文件的插件hexo-generator-feed

1
npm install hexo-generator-feed

 

修改站点配置文件

1
2
3
4
5
6
7
8
9
## RSS订阅
plugin:
- hexo-generator-feed
#Feed Atom
feed:
type: atom
path: atom.xml

limit: 20

接下来直接执行hexo g就可以生成xmlxml文件

订阅

自行Google

推荐世界第一RSS阅读器 inoreader

3. 绑定个人域名

首先你需要有一个域名

域名后缀看自己需求,.com属于比较贵的,因此选择近年来比较火的.top .xyz之类的

可以选择
万网
或者
西部数码
之类的

获取 IPIP 地址

在此之前需要获取自己 GitHub 的二级域名的 IP 地址。Git Bash下ping自己博客的地址即可获得。

解析域名

在你购买网站的控制台中找到域名解析,将刚刚得到的 ip 地址填入后面的“对应值(或者叫记录值)”,选择A记录,其他不用动。
之后在主机名中分别填入 www 和 @。刷新一下,大概就成功了。

GitHubGitHub 仓库的 custom domaincustom domain 绑定域名

进入仓库中, 点击setting往下滑 会看到custom domain

随后将自己购买的域名填写进去(不要加www之类的任何东西)

设置 CNAMECNAME

进入Hexo根目录下的 source 文件夹,添加一个CNAME。注意不要添加任何后缀名!

在里面填入你的域名。用记事本即可打开(当然VSCode也可以)

国内外分流

但是吧,这一点我并不会做,正在研究,过段时间会补上的。

BFS吧

第五部分: HexoHexo 功能

1. SEOSEO 优化

首先需要让搜索引擎收录你的这个网站,别人才能搜索的到,那么这就需要SEO优化了

SEO是由英文Search Engine Optimization缩写而来, 中文意译为“搜索引擎优化”。SEO是指通过站内优化比如网站结构调整、网站内容建设、网站代码优化等以及站外优化。

百度SEO

登录 百度站长平台,在站点管理中添加自己的网站。

验证方式选择 HTMLHTML标签 验证,我们需要获取的是红框内的这串代码

打开站点配置文件,添加以下两行,并把刚才的代码填在baidu那一行之后,注意与冒号之间要有空格。

1
2
google_site_verification: 
baidu-site-verification:

 

站点地图

首先安装插件

1
2
npm install hexo-generator-sitemap --save
npm install hexo-generator-baidu-sitemap --save

 

站点配置文件添加以下代码

1
2
3
4
5
# 自动生成sitemap
sitemap:
path: sitemap.xml
baidusitemap:
path: baidusitemap.xml

不过有大佬说这可有可无

然后执行一下 hexo cl && hexo g,在 public 中找到 baidusitemap.xml 和 sitemap.xml,用VSCode的查找和替换功能,把所有的 http://yoursite.com/ 换成我们自己的域名。然后不需要generate,直接deploy就可以了。

百度主动提交

执行一下

1
npm install hexo-baidu-url-submit --save

然后在站点配置文件中插入,填入你的token
1
2
3
4
5
6
# Baidu主动推送
baidu_url_submit:
count: 5 ## 提交最新的五个链接
host: ## 百度站长平台中注册的域名
token: ## 准入秘钥
path: baidu_urls.txt ## 文本文档的地址, 新链接会保存在此文本文档里

tokentoken 是主动推送(实时)中的

 

随后在主题配置文件中搜索找到 baidu_push 段落,将其改为

1
baidu_push: true

 

之后在 themes\next\layout\_partials\head.swig 中搜索 baidu_site_verification

1
2
3
{% if theme.baidu_site_verification %}
<meta name="baidu-site-verification" content="{{ theme.qihu_site_verification }}" />
{% endif %}

把 content 后面换成自己的token,只需要刚才的token,括号和引号都不需要。

 

Google SEO

需要小梯子

首先选择资源类型,一般选择网页前缀

image.png

GoogleGoogle会自动帮你完成验证。如果没有成功,那么复制HTML代码中的部分内容,填到刚才 themes\next\layout\_partials\head.swig 中的相应字段中。

posted @ 2020-09-08 12:07  WincerX  阅读(401)  评论(0)    收藏  举报