我正在开发一个服务器端node.js应用程序。问题是,该服务器使用sudo node myfile.js
启动后(没有sudo它无法访问端口80),我也没有办法阻止它除了使用sudo killall node
从另一个命令提示符窗口,这似乎是错误的,因为它是laborous并不会激活事件process.on("exit",callback)
。启动服务器后,退出node.js的正确方法是什么?
2
A
回答
0
加入-9杀死应该可以解决问题。
ps aux | grep node
kill -9 PID
+0
但是每次我想杀死这个过程时,我必须输入这个吗?我一分钟做好几次。那将是天花乱坠。 – MaiaVictor 2013-02-22 23:00:17
+0
'killall -9 node'也应该可以工作 – StephShelley 2013-02-22 23:04:21
1
测试你可以把一个杀死开关在你的程序,如:
if(req.url=="/shutdown"){
res.end("Shutting down server.");
process.exit(0);
}
然后你只需以关闭服务器访问http://localhost/shutdown
。你甚至可以创建一个URL来为你启动一个新的实例,只要不要忘记释放所需的资源,比如文件和正在使用的端口。
相关问题
- 1. 什么是启动多个本地node.js服务器的正确方法?
- 2. 什么是终止Node.js服务器请求的正确方法?
- 3. 用日志消息退出node.js脚本的正确方法是什么?
- 4. 什么是从服务关闭活动的正确方法?
- 5. 什么是从终端关闭服务器的正确方法?
- 6. 部署生产服务器的正确方法是什么?
- 7. 什么是从服务器显示值的正确方法?
- 8. 从Rails服务器订阅websocket的正确方法是什么
- 9. Windows服务在启动过程中失败的正确方法是什么
- 10. 在应用程序启动后在服务器中创建文件的正确方法是什么?
- 11. 确定Azure VM启动时间的正确方法是什么?
- 12. 什么是在Google App Engine中启动服务的正确YAML?
- 13. 什么是启动动画onRestart()的正确方法?
- 14. 在Python中重新启动HTTP服务器的正确方法
- 15. Rails服务器启动后立即退出<未定义方法>
- 16. Node.js无法启动服务器
- 17. 什么是在Android中启动新Activity的正确方法?
- 18. 等待.NET线程启动的正确方法是什么?
- 19. 什么是重新启动QApplication的正确方法?
- 20. 重新启动GlassFish 4的正确方法是什么?
- 21. Windows服务失败的正确方法是什么?
- 22. 在Angular4中使用服务的正确方法是什么?
- 23. 更改EntityManager服务名称的正确方法是什么?
- 24. 什么是在“完成所有事情”后退出node.js脚本的好方法
- 25. 什么是最好的方式启动AEM服务器
- 26. Rails服务器启动后立即退出
- 27. 什么是重新启动ScheduledExecutorService计划任务的正确方法?
- 28. 从誓言中启动服务器进行测试的正确方法是什么?
- 29. 在多核心服务器上启动多个节点实例的正确方法是什么?
- 30. 以编程方式退出MFC应用程序的正确方法是什么?
'Control + C'将正常工作。 – Brad 2013-02-22 22:52:11
@Brad在这里工作不正常。它使节点进程保持打开状态,下次尝试打开它时,我得到的端口出错。 – MaiaVictor 2013-02-22 22:59:38
在一个不相干的笔记上,如果你不是绝对必须的,你不应该使用sudo。这会导致服务器以root身份执行,因此它所做的每件事都以root身份执行。这会在远程代码执行时引发巨大的安全问题(想想最近的Rails问题)。您可以看到的另一种方法是使用类似nginx的方式在反向代理后面运行您的节点应用程序。 老实说,如果你只是做这个本地主机(重新阅读后,你可能是),你可能很好地使用sudo,但它的东西要记住。 – 2013-02-22 23:01:53