Hexo,安装与配置

Hexo,安装

  • 打开终端输入:sudo npm install hexo-cli -g
  • 输入密码。等待安装完成:

安装完成


  • 验证是否安装成功:
  • 打开终端输入:hexo -v
  • 终端输入结果:
1
2
3
4
5
6
7
8
9
10
11
hexo-cli: 1.0.3
os: Darwin 16.7.0 darwin x64
http_parser: 2.7.0
node: 6.11.2
v8: 5.1.281.103
uv: 1.11.0
zlib: 1.2.11
ares: 1.10.1-DEV
icu: 58.2
modules: 48
openssl: 1.0.2l

Hexo 创建博客

  • 初始化 Hexo 打开终端输入:

  • hexo init < folder >

  • 等待安装完成:

    博客创建

  • folder 生成博客文件夹名称,根据读者喜好自定义。
  • 进入博客目录,终端输入:
  • cd folder
  • 启动服务,终端端输入:
  • hexo s
  • 用浏览器打开 http://localhost:4000/http://127.0.0.1:4000/ 就可以看到页面了。

博客创建


Hexo,目录文件

  • 有些文件是在部署时才会产生的
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
.
├── .deploy # 需要部署的文件
|
├── node_modules # Hexo插件
|
├── public # 生成的静态网页文件
|
├── scaffolds # 模板
|
├── source # 博客正文和其他源文件, 404 、favicon 、CNAME
|
| ├── _drafts # 草稿
| |
| └── _posts # 文章
|
├── themes # 主题
|
├── _config.yml # 全局配置文件
|
└── package.json

Hexo,_config.yml 全局站点配置文件

  • 全局站点配置文件 配置文件为 /_config.yml

  • 站点信息 :
1
2
3
4
5
6
7
# Site                      # 站点信息
title: Test # 博客标题
subtitle: # 副标题
description: # 描述
author: John Doe # 作者
language: zh-CN # 语言
timezone: Asia/Shanghai # 时区

  • URL 链接格式:
1
2
3
4
url: http://yoursite.com                # 博客网址
root: / # 根目录
permalink: :year/:month/:day/:title/ # 文章的链接格式
permalink_defaults:

  • Directory 目录:
1
2
3
4
5
6
7
8
source_dir: source          # 源文件
public_dir: public # 生成的文件
tag_dir: tags # 标签文件夹
archive_dir: archives # 归档文件夹
category_dir: categories # 分类文件夹
code_dir: downloads/code # 下载文件
i18n_dir: :lang # 国际化
skip_render:

  • Writing 写作:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
new_post_name: :title.md    # 文章标题
default_layout: post # 模板
titlecase: false # 标题是否换成小写
external_link: true # 是否在新页面打开链接
filename_case: 0
render_drafts: false
post_asset_folder: false
relative_link: false
future: true
highlight:
enable: true
line_number: true
auto_detect: true
tab_replace:

  • Category & Tag 分类和标签
1
2
3
default_category: uncategorized
category_map:
tag_map:

  • Date 时间日期格式
1
2
date_format: YYYY-MM-DD
time_format: HH:mm:ss

  • Pagination 分页
1
2
3
4
5
6
per_page: 10            # 每页文章数
pagination_dir: page
# Extensions # 插件和主题
## Plugins: http://hexo.io/plugins/
## Themes: http://hexo.io/themes/
theme: landscape # 主题

  • 部署配置
1
2
3
## Docs: http://hexo.io/docs/deployment.html
deploy: # 部署配置
type:


Hexo,写文章

  • 打开终端,进入博客文件目录。
  • 输入:hexo new 文章标题
  • 然后到 _post 目录下打开,文章标题.md。
  • 文章格式如下:
1
2
3
4
5
6
7
8
9
10
---
title: 文章标题
date: 2017-09-18 14:18:11
tags:
- 标签1
- 标签2
- 标签3
categories: [分类1,分类2,分类3]
---
正文.........
  • 使用 Markdown 尽情发挥吧。

部署上传更新

  • 修改配置文件:
  • 打开终端,进入博客文件目录。
  • 输入: npm install hexo-deployer-git --save。安装部署当工具,等待完成。

预览Git


  • 修改配置文件:
  • 进入博客文件目录找到 _config.yml 文件打开,找到 deploy 部分,更改配置:
1
2
3
4
5
deploy:
type: git
repo:
github: < Github Git地址 >
coding: < Coding Git地址 >

  • Coding 可以不使用,笔者的博客是双部署,GitHub,Coding 同时部署,看各位喜好。
  • 输入:hexo clean && hexo g && hexo d,等待部署完成:

    部署远程


Hexo,命令的使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
hexo help                   # 查看帮助。
hexo init # 初始化目录。
hexo new "postName" # 新建文章。
hexo new page "pageName" # 新建页面。
hexo generate # 生成网页, 可以在public目录查看整个网站的文件。
hexo server # 本地预览,预览地址 : http://localhost:4000/,'Ctrl+C'关闭。
hexo deploy # 部署.deploy 目录。
hexo clean # 清除缓存,建议每次执行命令前先清理缓存。
hexo n == hexo new
hexo g == hexo generate
hexo s == hexo server
hexo d == hexo deploy

# 清理,生成网页,发布
hexo clean && hexo g && hexo d

Tips


  • skip_render: 跳过指定文件的渲染,您可使用 glob 表达式来匹配路径,(可以理解为不需要 hexo 模板的样式,可以自己写 html 样式)

  • 配置方法如下:

  • 单个文件夹下全部文件:skip_render: docs/*

  • 单个文件夹下指定类型文件:skip_render: docs/*.html

  • 单个文件夹下全部文件以及子目录:skip_render:docs/

  • 多个文件夹以及各种复杂情况:

    skip_render:
        - `docs1/*.html`
        - `docs1/**`
    
  • docs 路径问题,docs 应在 source 目录下