【问题标题】:Error: listen EACCES: permission denied 0.0.0.0:443错误:听 EACCES:权限被拒绝 0.0.0.0:443
【发布时间】:2021-10-30 03:33:21
【问题描述】:

在运行 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)

【问题讨论】:

  • 您是否有任何服务目前在端口 443 上工作?
  • 不,如果端口参与任何服务,我认为错误将是端口正在使用而不是上述错误消息。
  • 您需要 root 或同等权限才能监听小于 1024 的端口。请使用 sudo 运行应用程序
  • 我也试过sudo

标签: node.js express socket.io permissions


【解决方案1】:

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

找到重复的答案here。 参考another site

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

sudo apt-get install libcap2-bin 
sudo setcap cap_net_bind_service=+ep `readlink -f \`which node\`` 

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

【讨论】:

    猜你喜欢
    • 2020-10-11
    • 2020-06-07
    • 1970-01-01
    • 2016-11-14
    • 2021-07-22
    • 2019-10-28
    • 2016-10-30
    • 2018-06-08
    • 2018-03-25
    相关资源
    最近更新 更多