我刚在我的DigitalOcean服务器上安装了MEAN堆栈。测试应用程序可以成功运行,但是现在当我从DigitalOcean打开命令行时,它只显示信息:GET /modules/etc…,而我输入的部分是空白的。我该如何停止服务器并将其恢复到最初状态,以便我可以访问文件夹等内容?
简单地使用CTRL+C无法停止服务器运行,这正是我需要做的。
我刚在我的DigitalOcean服务器上安装了MEAN堆栈。测试应用程序可以成功运行,但是现在当我从DigitalOcean打开命令行时,它只显示信息:GET /modules/etc…,而我输入的部分是空白的。我该如何停止服务器并将其恢复到最初状态,以便我可以访问文件夹等内容?
简单地使用CTRL+C无法停止服务器运行,这正是我需要做的。
起初:按下CTRL+Z将会终止执行。稍后,为了终止PID(进程ID),请遵循以下步骤。
通用的方法来杀死任何包括本地服务器在内的进程ID:
参考:https://dev59.com/QWkv5IYBdhLWcg3wiRao#57536823
对于此情况:
$:lsof -i tcp:<PORT>
它将显示与端口关联的PID(processId):
$:kill -9 <process-id>
再次提醒,您可以运行服务器。
您可以通过结束进程来停止服务器。在Windows中,运行CMD并输入taskkill /F /IM node.exe
,这将杀死(停止)所有Node.js进程。然后您可以重新启动它。
通过命令行或BASH脚本编程地终止程序(例如node
的http-server
)。
[victoria@victoria ~]$ pgrep -a node ## pgrep --help
1315229 node /usr/bin/http-server -p 8080 /mnt/Vancouver/
[victoria@victoria ~]$ pgrep -l -f node
1315229 node
[victoria@victoria ~]$ pgrep -l -f http-server
1315229 node
[victoria@victoria ~]$ pgrep -f http-server
1336598
[victoria@victoria ~]$ a=$(pgrep -f node) ## or: a=$(pgrep -f http-server)
[victoria@victoria ~]$ echo $a
1315229
[victoria@victoria ~]$ kill -9 $a
[victoria@victoria ~]$ pgrep -a node
[victoria@victoria ~]$
## one-liner: a=$(pgrep -f node); kill -9 $a
只需打开任务管理器。 在进程中搜索node.js进程。 然后结束该进程并尝试,它将正常工作。
只有在使用操作系统Windows并且在代码中使用“:”时,才应该使用CTRL+C。
app.close();
如果你有这样的代码
let app = require('express'); // or any frameworks
var http = require('http');
var url = require('url');
http.createServer(function (req, res) {
console.log("Request: " + req.method + " to " + req.url);
res.writeHead(200, "OK");
res.write("<h1>Hello</h1>Node.js is working");
res.end();
}).listen(8080);
console.log("Ready on port 8080");