node.js http服务器作为Windows服务

Ere*_*evi 16 windows node.js

我在Node.js中创建了一个简单的http服务器.

我想让它在我的Windows 2008机器上永久运行,这样,如果计算机重新启动,它会自动重启.

所以我使用这个命令使它成为一个服务:

C:\Users\Administrator>sc create translate binPath= "node D:\Apps\translate\machine-learning-server\servertranslate.js" DisplayName= "Translation Server"
Run Code Online (Sandbox Code Playgroud)

然后开始:

C:\Users\Administrator>sc start translate
Run Code Online (Sandbox Code Playgroud)

并收到以下错误消息:

[SC] StartService FAILED 1053:

The service did not respond to the start or control request in a timely fashion.
Run Code Online (Sandbox Code Playgroud)

当我从命令行(而不是作为服务)启动它时,程序工作正常.

让计算机重新启动时自动重启的node.js Web服务器的最简单方法是什么?

Bra*_*rad 16

在过去,我使用NSSM在Windows上运行Node.js应用程序作为服务.它工作得很好,并且可以配置为在发生崩溃时自动重启您的应用程序.

http://nssm.cc/usage

nssm install YourService "C:\Program Files\Node.js\node.exe" "C:\something\something.js"
Run Code Online (Sandbox Code Playgroud)

  • 我在app目录中放了一个`node.exe`的副本,否则我的`nssm`有一些路径问题. (2认同)

Mar*_*sey 7

我记得,Service运行时环境与在命令shell下运行某些东西不同.特别是,服务需要响应来自系统的消息以指示其运行状态,如您所见:-)

这必须是一个解决的问题,但......

果然:https: //npmjs.org/package/windows-service

窗口服务

将Node.JS程序作为本机Windows服务运行.

npm安装windows-service