如何停止本地运行的nodejs服务器?

如何停止本地运行的nodejs服务器?,第1张

停止方法:

1.首先,不能共享完毕之后,都通过Ctrl+C来关闭NodeJS服务器

2.其次,如果仅仅能向客户端提供d:\ilinkit_logo.png文件的下载,是没有意义的,共享哪个文件,应该可以通过传入的参数来指定。我们首先来实现退出功能,如果客户端向服务器提交了http://localhost:8000/exit的请求,我们就执行服务器的退出 *** 作。

代码如下:

1 var http = require( 'http' )

2 var fs = require('fs')

3 var url = require( 'url' )

4  (空行)

5 var file_path = "D:\\ilinkit_logo.png"

6 var file_stream

7 var buffer_box = []

8 var file_length = 0

9 (空行)

10 var file_name = file_path.substr( file_path.lastIndexOf('\\')+1 )

关键的代码解析如下:

第33行,我们通过request对象获取客户端请求的主机及端口内容。

第46行~第50行,我们判断客户端提交的请求信息,如果是http://localhost:8000/exit,则调用server.close()关闭服务器。为什么要判断是不是localhost提交的请求?因为我们希望仅仅在服务器本地提交的请求才能关闭NodeJS服务器。

验证方式如下:

1. 启动服务器:打开命令行,进入js脚本所在的位置,执行:node h_ilinkit_1.js。

2. 打开浏览器,输入:http://localhost:8000,显示如下:

说明当前服务器启动正常。

3. 打开浏览器,输入:http://localhost:8000/exit。

提示NodeJS服务器已经关闭,我们把浏览器关闭之后,发现服务器已经正常退出,如下所示。

这样,我们就没必要每次为了退出服务器,都去按Ctrl + C了。

在LINUX中我们可以使用这种简单的方式让node.js在后台运行:

1

nohup node your_app.js &

forever可以让我们做得更好,并且可以跨平台的在windows和Linux下都能运行。

forever的安装:

1

npm install forever -g

forever的用法:

使用forever启动守护进程:

1

forever start your_app.js

关闭守护进程:

1

forever stop your_app.js

重启守护进程::

1

forever restart your_app.js

如果需要记录输出日志和错误:

1

forever start -l forever.log -o out.log -e err.log your_app.js

查看正在运行的程序:

1

forever list

nvm网址: nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions (github.com)

重启以后执行 命令可以自由选择版本


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7540374.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存