使用Hexo搭建博客

Posted qingfengethan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Hexo搭建博客相关的知识,希望对你有一定的参考价值。

Hexo搭建

????Hexo是一个快速、简洁且高效的博客框架。Hexo使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。Hexo是一个采用nodejs的静态博客,类似的博客也有很多,比较有名的Jekyll,Octopress等。Hexo官网https://hexo.io/zh-cn/。
????1、按照官网教程首先安装nodejs,下载地址:

http://nodejs.cn/download/

????2、安装git,下载地址:

https://git-scm.com/downloads

????3、使用npm安装hexo

 npm install -g hexo-cli

????4、创建一个文件夹作为博客的运行目录,

hexo i myblog //i是init的缩写 myblog是项目名
cd myblog //切换到站点根目录
hexo g   //生成静态文件,g即generetor
hexo s   //启动hexo服务,s即server

浏览器访问http://localhots:4000预览效果

????5、创建第一篇博客,进入hexo根目录下输入 :

hexo new "myFirstPost"

"myFirtPost" 为博客的名字,会在根路径/source/_posts下创建myFirstPost.md。在myFirstPost.md文件里编辑文章,也可以本地通过markdown在线编辑工具编辑完后同步到服务器上去替换_posts目录下的md文件
执行如下命令来发布:

hexo g //生成静态页面
hexo d //发布

????更新服务:

hexo clean //清除已生成的静态文件
hexo g     //重新生成文件

也可以直接github上建一个git仓库,本地搞定了推到github,hexo服务器端pull github上的代码就可以了。

????6、选择博客主题样式,可以使用hexo插件Next来定制自己喜欢的主题,参见Next官网

http://theme-next.iissnan.com/getting-started.html

Hexo进程守护

????ssh登陆服务器,启动hexo服务,Ctrl+C或者ssh断开连接,服务中断,网站无法访问。Node进程守护有很多工具,Forever,PM2等,这里讲一下用forever解决Hexo进程守护的问题,首先安装forever:

npm install forever -g

????在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:
‘ + data);
});

free.stderr.on(‘data‘, function (data) { 
console.log(‘standard error output:
‘ + data);
});

free.on(‘exit‘, function (code, signal) {
console.log(‘child process eixt ,exit:‘ + code);
});

????启动服务
????其实思路也很简单,大致意思就是node启动一个子进程,用forever 守护 hexo sever -p 4000这条命令(4000代表端口),关于node的child_process的相关知识,请自行baidu、google,或者去查nodejs的文档。
执行forever命令:

forever --minUptime 10000 --spinSleepTime 26000 start app.js

????停止服务
????这里值得注意的是你拿forever启动的服务,通过forever stopall是根本停不掉的,因为其实你执行的是hexo sever,可以通过下面的办法:

forever stopall  //先停掉守护进程
ps aux|grep hexo
kill -9 pid    //pid是hexo进程id





以上是关于使用Hexo搭建博客的主要内容,如果未能解决你的问题,请参考以下文章

使用Hexo+Github Pages 来搭建免费的专属博客

hexo+github个人博客搭建

使用hexo搭建博客并上传GitHub

使用Hexo搭建博客

使用 Hexo 搭建静态博客

搭建自己的技术博客系列使用 hexo 搭建一个精美的静态博客