如何从代码重启Node.js服务器?例如,如果使用expressjs框架,
app.get('/restart', function (req, res, next) {
//Code to restart a server
})
我想从这样的应用程序重新启动服务器,而无需进入控制台等。怎么做?
答案 0 :(得分:20)
我使用forever
来启动和监控应用程序。
所以重启功能如下:
app.get('/restart', function (req, res, next) {
process.exit(1);
});
关闭服务器后,forever
将重新启动服务。
控制台:
Express server listening on port 3000 in development mode error: Forever detected script exited with code: 1 error: Forever restarting script for 2 time Express server listening on port 3000 in development mode
答案 1 :(得分:0)
通过组合npm restart
和child_process.exec()
,似乎可以以编程方式重新启动服务器。并且由于它允许运行多个脚本来停止,重新启动和启动该选项,即使在多进程服务器或其他复杂的服务器(仅调用process.exit()
也不可行)中,该选项也适用。