我正在创建一个node.js项目,并将其上传到我的Windows服务器上,为移动应用程序提供API服务。
当我打开命令提示符并输入以下内容时:
node app.js
它可以正常运行,但是当我关闭命令提示符时,我的node.js服务器停止运行。
如何让它在我关闭命令提示符后仍然运行?
例如,在Ubuntu上,我使用以下命令:
nohup
如何在Windows上实现这个功能?
我正在创建一个node.js项目,并将其上传到我的Windows服务器上,为移动应用程序提供API服务。
当我打开命令提示符并输入以下内容时:
node app.js
它可以正常运行,但是当我关闭命令提示符时,我的node.js服务器停止运行。
如何让它在我关闭命令提示符后仍然运行?
例如,在Ubuntu上,我使用以下命令:
nohup
npm install nodemon -g
nodemon
forever nodemon --exitcrash
Nodemon适用于开发,尤其是在Windows上,而Forever和pm2更适用于生产环境,在Linux上。
Dim objShell
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.CurrentDirectory = "C:\path-to-your-node-js-app\"
objShell.Run("""node"" your-app.js"), 0
Set objShell = Nothing
https://keestalkstech.com/2016/07/start-nodejs-app-windowless-windows/ https://devblogs.microsoft.com/scripting/how-can-i-change-the-working-folder-of-a-script/
不行,你不能这样做。
即使你制作了一个GUI程序,你仍然需要通过控制台运行它。
而且一旦你关闭命令提示符,你的服务就会立即停止/终止。因为Node在运行时创建了一个服务器:http.createServer().listen(port)
或app.listen(port)
。所以这使得它具有独立性质。
因此,一旦你关闭了服务器所在的命令提示符,所有的服务都将在那一刻停止。