Hexo博客搭建和配置!

基础安装

NPM安装:

安装太慢的话,使用镜像解决。

1
npm config set registry http://registry.npm.taobao.org

下载Hexo:

输入hexo g生成静态网页,然后输入hexo s打开本地服务器。

1
2
3
npm install -g hexo-cli

hexo init blog

本地连接GitHub:

1
2
3
4
5
6
git config --global user.name "godweiyang"

git config --global user.email "792321264@qq.com"

生成密钥SSH key:
ssh-keygen -t rsa -C "792321264@qq.com"

打开GitHub,在头像下面点击Settings,再点击SSH and GPG keys,新建一个SSH,名字随便。

1
cat ~/.ssh/id_rsa.pub

将输出的内容复制到框中,点击确定保存。

输入ssh -T git@github.com,出现你的用户名,那就成功了。

基本配置

主页文章按更新时间排序

1
2
3
4
index_generator:
path: ''
per_page: 20
order_by: -updated

per_page 设置每页显示的文章数量。

order_by 指定文章的排序方式。

  • -date: 按照文章发布日期的倒序排序;
  • -updated: 按照文章更新时间的倒序排序;
  • -title: 按照文章标题的倒序排序;

域名绑定

你的Hexo本地目录, cd sourcetouch CNAME创建CNAME文件。

1
xiaoflyfish.cn

给解析添加A类型:

  • 185.199.108.153

  • 185.199.109.153

  • 185.199.110.153

  • 185.199.111.153

博客备份

1
2
3
4
5
6
7
8
9
10
11
12
13
14
切换并创建一个叫hexo的分支
git checkout -b hexo

# 切换分支
git checkout hexo

将复制过来的文件推送到github
git add .

git commit -m "新建分支"

git remote add origin https://github.com/zine-fj/zine-fj.github.io.git

git push -u origin hexo

注意:如果themes下human的文件夹无法上传,因为有.git文件。

删除子文件夹下.git后,依然无法提交子文件夹下的文件,解决操作如下。

1
2
3
4
git rm --cached themes/hueman
git add .
git commit -m "xxx"
git push origin master

换电脑配置

进入 原来电脑 hexo 博客目录,只拷如下几个目录。

换电脑,同时要把.git文件夹复制过去,然后安装相关插件。

1
2
3
4
5
6
7
scaffolds            文章模版                           必须备份
source 博客文章 必须备份
themes 主题 必须备份
.gitignore 限定在push时那些文件可以忽略 必须备份
_config.yml 站点配置文件 必须备份
package.json 安装包的名称 必须备份
.ssh 密钥文件 必须备份

部署到GitHub

安装一个扩展npm i hexo-deployer-git

最后输入hexo d上传到GitHub上。

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

Typora图片配置

偏好设置->图像->设置图片根目录。

1
typora-root-url: ../../../themes/hunam/source

插入音乐

1
npm install hexo-tag-aplayer --save
1
{% aplayer "Caffeine" "Jeff Williams" "11.mp3" "autoplay" %}
1
2
<%- css('https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.css') %>
<%- js('https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.js') %>

其他配置

跳过指定文件的渲染

https://hexo.io/zh-cn/docs/configuration.html

1
2
3
4
5
skip_render: "mypage/**/*"
# 将会直接将 `source/mypage/index.html` 和 `source/mypage/code.js` 不做改动地输出到 'public' 目录
# 你也可以用这种方法来跳过对指定文章文件的渲染
skip_render: "_posts/test-post.md"
# 这将会忽略对 'test-post.md' 的渲染

提升加载速度

https://github.com/Colsrch/hexo-offline-popup

网站收录到百度

查看网站是否被收录:

可以输入 site:域名 来查看域名是否被搜索引擎收录。

如:site:hardyfish.top

百度资源平台配置:

https://ziyuan.baidu.com/

依次选择:用户中心 - 站点管理,添加你的网站。

如:hardyfish.top

网站验证:

文件验证:下载给定的文件,将其放到本地主题目录 source 文件夹,然后部署上去完成验证。

见:https://ziyuan.baidu.com/college/articleinfo?id=1003

提交百度搜索:

安装插件 npm install hexo-baidu-url-submit --save,然后在根目录 _config.yml 文件里写入以下配置。

1
2
3
4
5
baidu_url_submit:
count: 1 # 提交最新的多少个链接
host: www.itrhx.com # 在百度站长平台中添加的域名
token: your_token # 秘钥
path: baidu_urls.txt # 文本文档的地址, 新链接会保存在此文本文档里

在根目录的 _config.yml 文件,url 要改为在百度站长平台添加的域名,也就是网站的首页地址。

1
2
3
4
# URL
url: https://www.itrhx.com
root: /
permalink: :year/:month/:day/:title/

加入新的 deployer。

1
2
3
4
5
6
7
8
9
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
- type: git
repository:
github: git@github.com:TRHX/TRHX.github.io.git # 这是原来的 github 配置
coding: git@git.dev.tencent.com:TRHX/TRHX.git # 这是原来的 coding 配置
branch: master
- type: baidu_url_submitter # 这是新加的主动推送

网站收录到Google

生成一个网站地图(SiteMap):

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

用命令 hexo g -d 将网站部署上去。

然后访问 首页/sitemap.xml 或者 首页/baidusitemap.xml 就可以看到网站地图了。

  • 其中 sitemap.xml 文件是搜索引擎通用的 sitemap 文件。
  • baidusitemap.xml 是百度专用的 sitemap 文件。

进入谷歌站长平台,登录谷歌账号之后会让你验证网站所有权。

进入:https://search.google.com/search-console/

选择站点地图,将生成的 sitemap 提交就行了。