对于尝试在80端口上运行Node.js服务器的人来说,以下错误很常见。
Error: listen EACCES 0.0.0.0:80
我曾经在我的亚马逊EC2服务器上解决这个问题,只需简单地使用
sudo node app.js
现在我已经了解到出于安全考虑不应使用那种方法。如此答案所述,一个好的解决方案是使用:
sudo apt-get install libcap2-bin
sudo setcap cap_net_bind_service=+ep `readlink -f \`which node\``
然而,我不确定如何在 AWS Elastic Beanstalk 实例上实现这两种解决方案。与 AWS EC2 服务器不同,我似乎没有 SSH 访问权限,唯一的运行方式似乎是通过我的 package.json
文件执行以下操作:
{
"scripts": {
"start": "node init"
}
}
那么我不知道如何运行其他类型的命令。这应该怎么做?
process.env.PORT
是由谁设置的? - CodyBugstein