错误:监听 EACCES:权限被拒绝 0.0.0.0:443

MUH*_*C P 2 permissions node.js express socket.io

运行时npm start显示此权限问题。

 Error: listen EACCES: permission denied 0.0.0.0:443
    at Server.setupListenHandle [as _listen2] (node:net:1302:21)
    at listenInCluster (node:net:1367:12)
    at Server.listen (node:net:1454:7)
Run Code Online (Sandbox Code Playgroud)

小智 11

在 https 端口 443 上使用 npm 运行服务器就可以了sudo。直到我不得不升级npm(从 v6 到 v8)。谷歌搜索最初没有帮助,因为每个人都在建议sudo

在这里找到重复的答案。参考另一个网站

很多人都被困在这里,但解决方案很简单。有几个选择,但这是我喜欢的一个。键入以下命令:

sudo apt-get install libcap2-bin 
sudo setcap cap_net_bind_service=+ep `readlink -f \`which node\`` 
Run Code Online (Sandbox Code Playgroud)

现在,当您告诉 Node 应用程序您希望它在端口 80 上运行时,它不会抱怨。