Amazon EC2 Error: listen EACCES 0.0.0.0:80

Amazon EC2 Error: listen EACCES 0.0.0.0:80

我已经将 HTTP TCP 端口 80 添加到入站规则中,但仍然出现错误:

Error: listen EACCES 0.0.0.0:80
    at Object._errnoException (util.js:992:11)
    at _exceptionWithHostPort (util.js:1014:20)
    at Server.setupListenHandle [as _listen2] (net.js:1338:19)
    at listenInCluster (net.js:1396:12)
    at doListen (net.js:1505:7)
    at _combinedTickCallback (internal/process/next_tick.js:141:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
    at Function.Module.runMain (module.js:695:11)
    at startup (bootstrap_node.js:191:16)
    at bootstrap_node.js:612:3

你可能需要 运行 你的 node.js 脚本,因为你想在端口 80 上监听。

您不能 运行 在没有 root 权限的情况下侦听低端口(低于 1024)的进程。

您要么尝试 运行 如上所述 sudo,要么开始使用反向代理(例如 nginx),在另一个端口上启动进程并使用反向代理来将呼叫从端口 80 转发到您启动进程的任何端口。

错误代码 EACCES 表示您对该端口上的 运行 应用程序没有适当的权限。在 Linux 系统上,任何低于 1024 的端口都需要 root 权限。