安装Hexo
npm install hexo-cli -g
初始化blog
hexo init blog
cd blog
npm install
更换主题
npm install --save hexo-renderer-jade hexo-renderer-scss
cd themes
git clone https://github.com/yzzting/hexo-theme-MyFairLady.git MyFairLady
这里可以有其他自己喜欢的主题,可以去hexo官网
然后更新自己的博客的主要_config.yml设定主题MyFairLady
# Extensions
## Plugins: http://hexo.io/plugins/
## Themes: http://hexo.io/themes/
theme: MyFairLady
主要的配置
菜单
menu:
home: /
about : /about
archives: /archives
这个是header里面三个选项,如果要添加的话,在目录下的 source 下创建 一个你想要添加的选项名称的文件夹,然后在里面new一个例如xx.md在 里面填入
---
layout: xxx
title: "xx"
noDate: "true"
---
显示的文章数
每一页显示的文章数,还是在主目录下的_config.yml,找到per_page,选择你喜欢的数字。归档页也会跟着改变。
# Pagination
## Set per_page to 0 to disable pagination
per_page: 5
在里面添加了百度统计和google统计,默认才用的是google。分别在主题的配着文件下填入你的ID,就是启用了。
# Baidu Analytics
# baidu_analytics: c21994907883f37ffd80e13627dd4faa
# Google Analytics
google_analytics: UA-75314797-1
社交
在主题的_config.yml里面的subnav选项中,有三个选项,github,知乎,一切从简,并没有用icon。
# SubNav
subnav:
gitHub: "https://github.com/binperon"
zhiHu: "https://www.zhihu.com/people/binperson"
其他的配置呢在配置文件里面写的也蛮清楚了,一看就懂的啦
评论框
因为多说的评论框,样式很low,只是采用了disqus。虽然是国外的,但是不影响使用。注册和配置相当容易。注册填入你的网站信息之后,在主题的配置文件.config.yml 中填入
# comments
disqus: binperson
启动服务
hexo server -p 5000
Hexo进程守护
Node进程守护有很多工具,Forever,PM2,PM2.5 blah blah.我用PM2
Hexo下新建一个app.js,写入下面代码:
var spawn = require('child_process').spawn;
free = spawn('hexo', ['server', '-p 4000']);/* 其实就是等于执行hexo server -p 4000*/
free.stdout.on('data', function (data) {
console.log('standard output:\n' + data);
});
free.stderr.on('data', function (data) {
console.log('standard error output:\n' + data);
});
free.on('exit', function (code, signal) {
console.log('child process eixt ,exit:' + code);
});
执行pm2命令:
pm2 start app.js
停止服务
pm2 stop id
注意
上传服务器后执行npm install 因为有些因为路径问题上传失败导致文件缺损。