我尝试在Nginx服务器上运行MEAN应用程序,但它总是在崩溃之后崩溃:
// port is 8080
app.listen(port, (data) => {
console.log('Listening on port ' + port + ' in ' + process.env.NODE_ENV + ' mode');
});
我的防火墙状态为
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
Nginx Full ALLOW Anywhere
8080 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx Full (v6) ALLOW Anywhere (v6)
8080 (v6) ALLOW Anywhere (v6)
错误
listen EADDRINUSE :::8080
我已使用this tutorial来设置服务器。
似乎8080已经在使用,但我怎样才能找到它的用途并进行修复?
答案 0 :(得分:0)
由于您提到您遵循了教程
这表示您运行了PM2,即使您将其删除也会重新启动节点。所以你需要停止PM2
sudo pkill PM2
然后,您将能够正常启动节点程序
答案 1 :(得分:-1)
要尝试获取正在侦听端口的进程,请输入:
sudo netstat -tulpn | grep :8080
希望能够为您提供正在使用该端口的内容。
然后通过PID终止进程,只需使用
sudo kill pid
来自https://www.cyberciti.biz/faq/what-process-has-open-linux-port/
另一种方法是直接使用sudo fuser -k 8080/tcp
来终止TCP上端口8080上的进程。