专用网络服务器,nodeJS无法运行应用程序
问题描述:
好吧我已经在运行fedora服务器的电脑上安装了我自己的网络服务器。一切都正确配置。我有我的DNS服务器将我的域名指向IP并可以连接。问题是我想在服务器上运行节点应用程序。我无法找到正确的指南或示例。看来,我必须通过终端在服务器上运行'node app'。每次我都会遇到这个错误。专用网络服务器,nodeJS无法运行应用程序
Error: listen EADDRINUSE 192.168.1.5:8080
at Object.exports._errnoException (util.js:1020:11)
at exports._exceptionWithHostPort (util.js:1043:20)
at Server._listen2 (net.js:1258:14)
at listen (net.js:1294:10)
at net.js:1404:9
at _combinedTickCallback (internal/process/next_tick.js:83:11)
at process._tickCallback (internal/process/next_tick.js:104:9)
at Module.runMain (module.js:606:11)
at run (bootstrap_node.js:389:7)
at startup (bootstrap_node.js:149:9)
从我读到的,这意味着端口是不开放的。然而它是。我做错了什么,我该如何解决这个问题。相同的代码更改为这台电脑本地正常工作。
var http = require('http'),
express = require('express'),
app = express();
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(8080, '192.168.1.5');
console.log('Server running at http://192.168.1.5:8080/');
答
你可以看到哪些进程正在使用该端口与
sudo netstat -tulpn | grep 8080
的最后一列“PID /程序名称”得到就是这样的端口上运行的PID,然后运行
sudo kill -9 <pid>
看起来您在端口8080上运行了多个服务器实例 –
您可能正在运行另一个node.js实例。在终端输入:'killall node',然后尝试再次启动您的应用程序。 –
sh:第0行:kill:all:参数必须是进程或作业ID是我从中得到的。此外,我刚刚重新启动电脑,并运行节点应用程序,仍然是相同的错误 –