问题背景

在启动hexo博客项目时,使用 hexo server 命令智能挂在前台,一旦退出控制台,
服务进程就自动关闭。尝试使用 hexo server & 也无法解决。

解决办法

使用pm2工具解决, pm2是一个管理nodejs进程的工具。详情参考:

安装pm2

1
npm install -g pm2

启动文件

在博客项目根目录创建并编写app.js启动文件。

1
2
3
4
5
6
7
8
9
10
11

const { exec } = require('child_process')
exec('hexo server',(error, stdout, stderr) => {
if(error){
console.log('exec error: ${error}')
return
}
console.log('stdout: ${stdout}');
console.log('stderr: ${stderr}');
})

启动项目

1
pm2 start app.js

停止项目

1
pm2 stop all