配置环境

  • 安装git和Node.js
script
1
2
3
sudo apt-get install git-core
wget -qO- https://raw.github.com/creationix/nvm/v0.33.11/install.sh | sh
nvm install stable
  • 安装hexo
script
1
npm install -g hexo-cli

开始使用

新建一个hexo程序

script
1
2
3
hexo init blog
cd blog
npm install # 创建一个node_modules文件库,以后在程序中装的npm依赖都可以在这里面找到
  • 程序目录
1
2
3
4
5
6
7
8
9
.
├── _config.yml
├── package.json
├── scaffolds
├── source
| ├── _drafts
| └── _posts
└── themes

  • 目录说明
目录名 含义
_config.yml 配置文件
package.json 应用程序的信息,hexo默认安装一些应用
scaffolds 模版文件夹,新建文件的时候会使用里面的模板文件
source 资源文件夹是存放用户资源的地方,新建的文件会存在这里,其中的文件会被解析到public中
themes 主题文件夹
  • _config.yml配置参数说明
参数 描述
title 网站标题
subtitle 网站副标题
description 网站描述
keywords 网站的关键词。使用半角逗号 , 分隔多个关键词。
author 作者的名字
language 网站使用的语言
timezone 网站时区。默认使用电脑的时区。
url 网址
root 网站根目录
permalink 文章的链接格式,默认year/month/day/title/
permalink_defaults 永久链接中各部分的默认值

写一篇文章

script
1
hexo new <layout> <title>

<layout>:布局方式,默认为post
<title>:文章标题

  • 新增网站分类: hexo new page categories
  • 然后按照提示的文件地址,打开文件,改为以下内容
1
2
3
4
5
6
---
title: 分类
date: 2019-05-31 14:20:48
type: categories
layout: categories
---
  • 注意:分类的地址是不区分大小写的,如果先提交了一个小写的分类,比如分类名为:mysql,然后又提交了篇文章的分类是MySQL,这时候进入MySQL的分类就会404。
  • 处理:进入.deploy_git文件夹,打开它的git配置文件./git/config。把ignorecase=true改成ignorecase=false,重新生成静态文件发布就好了
script
1
2
3
hexo clean
hexo generate
hexo deploy

启动服务器,预览

  • :Hexo3.0把服务器独立成了个别模块,必须先安装hexo-server才能使用
script
1
2
npm install hexo-server --save
hexo server
  • hexo server可以加一些参数
    -p:指定端口
    -i:自定义IP
    -s:静态模式(hexo启动以后默认会监视文件变动自动更新网页,使用静态模式会阻止网页自动更新)
  • hexo默认地址为http://localhost:4000/

部署到服务器

script
1
hexo deploy
  • 但是在部署之前需要先进行配置_config.yml文件,以git部署为例
    需要先安装hexo-deployer-git
script
1
npm install hexo-deployer-git --save

修改配置

1
2
3
4
5
deploy:
type: git
repo: 仓库地址
branch: 分支名
message: commit -m 的信息
  • :当执行hexo deploy时,Hexo会将public目录中的文件和目录推送至_config.yml中指定的远端仓库和分支中,并且完全覆盖该分支下的已有内容。