EACCES:Windows Next js 中的权限被拒绝 0.0.0.0:3000

Fad*_*hil 5 windows next.js

当我尝试启动下一个 js 服务器时,yarn dev它会抛出这个错误。我需要重新启动整个系统才能使其正常工作。我正在 Windows 上运行它。这需要永远。

Error: listen EACCES: permission denied 0.0.0.0:3000
    at Server.setupListenHandle [as _listen2] (net.js:1301:21)
    at listenInCluster (net.js:1366:12)
    at doListen (net.js:1503:7)
    at processTicksAndRejections (internal/process/task_queues.js:81:21) {
  code: 'EACCES',
  errno: -4092,
  syscall: 'listen',
  address: '0.0.0.0',
  port: 3000
}
Run Code Online (Sandbox Code Playgroud)

小智 25

运行这个.bat 文件

%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
net stop winnat
net start winnat
exit
Run Code Online (Sandbox Code Playgroud)

  • 这对我有用,但即使是最简短的解释也会更好。 (5认同)
  • 解释:这基本上会重新启动 Windows NAT 服务,这可能有助于解决容器或虚拟机的一些网络问题。您很可能正在使用 docker 或类似的东西。 (2认同)

Chr*_*son 13

不确定这是否是同一个问题,但我的错误是:

Error: listen EACCES: permission denied 0.0.0.0:3000
... Emitted 'error' event on Server instance at:
    at emitErrorNT (node:net:1357:8)
    at processTicksAnd
Run Code Online (Sandbox Code Playgroud)

这解决了Restarting the service "Host Network Service"


小智 8

对于许多人来说,Windows 上的“解决方案”似乎是禁用虚拟以太网适配器(尤其是当您使用 docker 时)。也可能是另一个程序正在使用同一端口,您可以使用 来查找netstat -a

我禁用所有未使用并重新启动的 vEthernet 适配器。在某个时刻,它再次神奇地发挥作用。该设置可以在此处找到:控制面板 > 网络和 Internet > 网络连接

来源: https ://github.com/BrowserSync/browser-sync/issues/1705#issuecomment-508846475

(老实说,这是我很长一段时间以来遇到的最烦人的错误,也是我切换到 Linux 的原因)