错误:永远听EACCES 0.0.0.0:80

问题描述 投票:-1回答:1

我有一个nodejs程序,运行了几个月以来永远https://www.npmjs.com/package/forever(在Ubuntu 16.04.2 LTS上)。我没有问题(我有节点v6.11.1)。 但我最近想使用一个名为瓶颈的软件包,由于某些原因(因为异步语法错误)我想更新我的nodejs。 所以我按照他的提示updating nodejs on ubuntu 16.04(问题即将来临),我执行了:

sudo npm install -g n
sudo n lts

我注意到我的应用已停止在forever list。所以运行:

forever start -o out.log -e err.log app.js

但我的应用程序仍然在forever list停止,没有运行app.js任务(用htop检查)。我检查err.log,我发现此错误消息:

Error: listen EACCES 0.0.0.0:80
at Object.exports._errnoException (util.js:1018:11)
at exports._exceptionWithHostPort (util.js:1041:20)
at Server._listen2 (net.js:1245:19)
at listen (net.js:1294:10)
at Server.listen (net.js:1390:5)
at Object.<anonymous> (/home/esu/pixelland006/app.js:35:6)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)

我尝试了不同的版本,但没有。它仍然无法正常工作。所以我运行sudo n 6.11.1回到v6.11.1并且我卸载了n。我搜查了一下,发现这可能是一个特权问题。现在我使用nmv而不是n它仍然不起作用,我的应用程序仍然在forever list被阻止。

但是当我跑步时,我注意到一些非常奇怪的东西:

forever start -o out.log -e err.log app.js

我的应用程序在forever list中被阻止,并且没有运行app.js任务(使用htop检查),但是当我这样做时:

sudo forever start -o out.log -e err.log app.js

永远告诉我,我的应用程序在forever list被阻止,但我看到我的app.js任务正在运行。

它工作了几个月,但自从我尝试更新nodejs后,永远不再起作用了。

现在我怎么能永远运行我的应用程序? 先感谢您

node.js task port node-modules forever
1个回答
0
投票

我想我破了包裹。我重新安装了所有东西:npm,nodejs ...我在此之后升级了我的nodejs:https://askubuntu.com/a/548776所以我输入了

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs

现在由于某些原因,我必须永远使用sudo,所以我输入

sudo forever list  

得到清单和

sudo forever start -o out.log -e err.log app.js  

永远开始我的应用程序。在这两种情况下都不要忘记使用sudo,否则会让人感到困惑。希望有一天能帮助别人。

© www.soinside.com 2019 - 2024. All rights reserved.