node.js-AWS上的节点EADDRINUSE(与端口无关)

前端之家收集整理的这篇文章主要介绍了node.js-AWS上的节点EADDRINUSE(与端口无关) 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我感到非常沮丧……我无法在线找到任何信息来帮助我.

我的设置是:

> AWS EC2实例
> Nginx指向127.0.0.1:3000
>节点JS v0.10.32
> mongoDB进程作为守护程序运行

我尝试使用我的公共DNS /公共IP并重新启动Nginx,我尝试使用端口80、8000、1337等…我试图删除Nginx. ps aux | grep:3000不返回任何内容. ps aux | grep:80不返回任何内容.等等…

以下是相关代码

@H_403_16@https.createServer(options,app).listen(app.get('port'),'127.0.0.1',function() { console.log('Express server listening on port ' + app.get('port')); }); http.createServer(function(req,res) { res.writeHead(301,{ "Location": "https://" + req.headers['host'] + req.url }); res.end(); }).listen(3000);

无论我使用哪个端口,sudo node app.js和node app.js都会收到相同的错误

@H_403_16@events.js:72 throw er; // Unhandled 'error' event ^ Error: listen EADDRINUSE at errnoException (net.js:904:11) at Server._listen2 (net.js:1042:14) at listen (net.js:1064:10) at net.js:1146:9 at dns.js:72:18 at process._tickCallback (node.js:419:13) at Function.Module.runMain (module.js:499:11) at startup (node.js:119:16) at node.js:906:3

我确实做到了这一点,但是我需要将流量重定向到端口443并使用https:

@H_403_16@app.listen(3000,function() { console.log('Express server listening on port ' + app.get('port')); });
最佳答案
您可以使用netstat -tulpn | grep:XX,XX是您要检查的端口.

似乎您正在尝试在同一端口上同时启动http服务器和https服务器.删除http.createServer位,就可以了.

猜你在找的Nginx相关文章