每一个项目在开始以前,都须要先清楚项目的目的、主要的需求和核心点在哪。我在选择搭建的方式以前,根据我的情况确认了博客的搭建须要知足如下需求:css
根据自行百度了解,在github/gitee上搭建的Pages博客最起码是知足第1点要求的,选用哪一种方式在github上搭建便打算先简单使用下搭建的技术了解后再作确认。下图为gitee支持搭建静态网站的技术: html
虽然gitee/github均可以部署,但仍是要提下二者之间的细微区别:前端
在部署到gitee/github以前能够先在本地调试样式添加文章,调好了后再部署到github上。node
项目目录下的核心目录/文件以下:git
下载next主题(若是慢的话能够同步到gitee再从gitee下载):git clone github.com/theme-next/…github
以next为例,hexo的页面都是经过_config.yml与/themes/next/_config.yml配置的,明显的配置以下图(c:为_config.yml中的配置,tc:themes/next/_config.yml中的配置): npm
hexo菜单栏能够在项目目录下经过hexo new page {menuName}
指令建立,也可直接建立/source/{menuName}/index.md文件,并在themes\next_config.yml添加menu:{menuName}
配置,如一个自定义菜单的局部配置(next/_config.yml):bash
menu:
# || 后面是图标名,可在https://fontawesome.com/icons中查询所需图片
home: /index || home
about: /about/ || user
tags: /tags/ || tags
categories: /categories/ || th
temp: /temp/ || calendar
archives: /archives/ || archive
复制代码
文件与效果图: 服务器
须要注意的是在fontawesome中搜到的图标不必定都有,还须要根据图标名查询themes/next/source/lib/font-awesome/css/font-awesome.css
下有没有该图标样式,如stack-overflow则在css文件下先搜索下有没有该样式,有的话才会显示fontawesome中对应的图标,没有的话会显示一个矩形。有些图标fontawesome有但css中没有的缘由是版本不一样,目前我在网上搜的最新fontawesome最新的css是4.7.0的,但fontawesome上的一些图标版本是新的版本才有(如blog)的,因此我的猜想是版本缘由致使网站上搜到的一些图标不可用。仔细点观察其实能够发现css中的样式content是与fontawesome上的图标Unicode是同样的: 网络
文章建立可经过在/source/_posts下建立"文章.md"文件就可,也可经过命令行hexo new {article}
来建立。 hexo里的文章均可经过添加文章头进行文章归档,如下为一篇我的文章头:
---
title: 聊聊MQ与如何基于Spring Boot RocketMQ搭建一个消息中心
date: 2020-03-09 16:54:18
tags: [RocketMQ, Spring Boot]
categories: [RocketMQ, Spring Boot]
---
复制代码
在文章头中添加了tags和categories后便可完成标签与分类,无需额外的操做,前提是source目录下已存在categories与tags。
比较细的细节以为前面都讲了,请容我偷下懒吧,如下为我的的配置文件主要更改:
# Site 站点配置
title: Wilson Blog
subtitle: '一名普通的搬砖工'
description: '一名普通的搬砖工'
keywords:
author: Wilson He
language: zh-CN
timezone: 'Asia/Shanghai'
index_generator:
path: ''
# 每页只显示一篇文章
per_page: 1
# 根据建立时间排序,若是文章有设置top值,则先按top由高到低排,目前我的是在索引文章上加了top值设为首页文章的
order_by: -date
theme: next
# 添加搜索功能,需先安装搜索插件:npm install hexo-generator-searchdb并将themes的_config.yml中local_search:enable设为true
search:
path: search.xml
field: post
format: html
limit: 10000
# 部署的项目地址,为私有仓库
deploy:
type: git
repo: https://github.com/Wilson-He/wilson-he.github.io
# repo: https://gitee.com/Wilson-He/Wilson-He
复制代码
favicon:
small: /images/favicon-16x16-next.png
# 这里的/images路径是themes/next/source下的images
medium: /images/piano-icon.png
apple_touch_icon: /images/apple-touch-icon-next.png
safari_pinned_tab: /images/logo.svg
footer:
# 不显示next原有的powered和version footer
powered:
enable: false
version: false
# 首页信息与菜单显示样式,Pisces为网站信息显示在左侧,Mist在顶部,更多的自行尝试
scheme: Pisces
menu:
home: /index || home
about: /about/ || user
tags: /tags/ || tags
categories: /categories/ || th
temp: /temp/ || calendar
archives: /archives/ || archive
sidebar:
# 边栏位置设置
position: left
# 头像设置
avatar:
url: https://xxx.aliyuncs.com/atavar/xxx.jpg
# 头像下显示的社交图标与连接,||后为fontawesome上的图标名
social:
gitee: https://gitee.com/Wilson-He || gg
github: https://github.com/Wilson-He || github
csdn: https://blog.csdn.net/z28126308 || creative-commons
Email: mailto:845023508@qq.com || envelope
# 奖赏设置,true则每篇文章末尾会新增捐赠按钮,点击会显示收款图片(若是是直接显示我确定会直接enable false的[doge])
reward_settings:
# If true, reward will be displayed in every article by default.
enable: true
animation: false
#comment: Donate comment here.
reward:
wechatpay: /images/wechatpay.jpg
alipay: /images/alipay.jpg
// 头部显示github banner
github_banner:
enable: true
permalink: https://github.com/Wilson-He
// 启用本地搜索
local_search:
enable: true
复制代码
配置完后去看下文章,这阅读体验已经比预想的好不少。
部署流程十分简单,安装hexo git插件后在github/gitee创建仓库,再在项目目录命令行部署便可。
安装hexo git插件:npm install hexo-deployer-git --save
github:
hexo deploy
deploy指令便可部署到页面仓库(若是没配置好git则须要输入github帐号密码) 每次有部署时github都会为咱们从新部署运行静态博客,失败会发送邮件,这一点很方便。博客页面仓库配置成功时查看仓库Settings下的Github Pages会显示如下图片内容,访问该地址便可显示你的博客页面(没事不用来闲逛,目前没啥内容可给你们看):
gitee:
hexo deploy