node 服务器端启动

时间:2021-11-05 22:00:54

场景: 根据资料学习,制作了一个web聊天室的应用,部署在windows服务器上,运行正常,当关闭远程桌面,运营node的cmd自己就关闭了。

解决方法:

1、怀疑服务器自动重启,如是创建开机启动(失败)。

(1) 创建cmd快捷方式到桌面上,右键-》属性-》目标 中添加 /K "node app.js";

(2) 将创建的快捷方式放到 开始-》所有程序-》启动 中

失败原因:windows 远程桌面与本地建立当前回话,当关闭远程桌面的时候,相当于注销服务器,运行的程序则关闭,因此需要将服务器中的node设置为服务启动才可以在关闭远程桌面的时候 继续运行。

2、创建node服务启动(成功)

(1) 将node作为服务在服务器端运行,有相关的windows插件。  

npm install winser

(2) 在根目录的 package.json 中添加

 "scripts": {
   
                     "install-windows-service": "winser -i",
    "uninstall-windows-service": "winser -r"
  }

(3) 安装windows service 服务

npm run-script install-windows-service

(4) 启动node 服务

设置启动脚本为 server.js,若原来设置为app.js 需要修改,只能执行server.js.  cmd中执行 npm start。 则node 作为服务在服务器端执行。服务的名称为 package.json 中的”name“值。