vue 项目启动 报错 Error: listen EACCES: permission denied 127.0.0.1:xxx

error when starting dev server:
Error: listen EACCES: permission denied 127.0.0.1:5173
    at Server.setupListenHandle [as _listen2] (node:net:1800:21)
    at listenInCluster (node:net:1865:12)
    at doListen (node:net:2014:7)
    at process.processTicksAndRejections (node:internal/process/task_queues:83:21)

这个问题碰到了两次了,第一次设置的是3000端口,启动项目是ok的,过了一段时间就再起就碰到这个问题,当时排查方向
1、查询端口是否已经被占用, netstat -ano | findstr pid
结果显示是:没有显示被占用

2、确定是不是权限不足,切换管理员身份,重启vue项目
结果是:失败,报错原因和上面一样

3、应该是和下面一样排查端口是不是被占用(当时没记录,一边查一边搞,然后排查出是在某个组件占用的端口范围内)

当时是选择切换端口。

这次是 5173,也是运行一段时间以后过一段时间重启就不行了

netstat -ano | findstr pid
# 无输出

netsh int ipv4 show excludedportrange protocol=tcp
协议 tcp 端口排除范围

开始端口    结束端口
----------    --------
      5106        5205
      5284        5383
      5384        5483
      5488        5587
      5588        5687
      5688        5787
      5788        5887
      5888        5987
     50000       50059     *

* - 管理的端口排除。

# 5173 端口正好在被系统保留的范围内

刚刚查询之前怎么解决是看到这篇文章:https://stackoverflow.com/questions/62508193/error-listen-eacces-permission-denied-0-0-0-03001?utm_source=chatgpt.com
有一个回答介绍 对于在尝试将 Node.js 服务器绑定到特定端口时遇到“EACCES: 权限被拒绝”错误的 Windows 用户,之后执行的步骤。

net stop winnat # 停止 Windows NAT 服务。
net start winnat # 启动 Windows NAT 服务。

执行之后即使不切换端口也可用

之后重新尝试一下,如下示例

netsh int ipv4 show excludedportrange protocol=tcp

协议 tcp 端口排除范围

开始端口    结束端口
----------    --------
     50000       50059     *

# 这个排除端口
* - 管理的端口排除。
posted @ 2025-04-26 00:43  虚拟式  阅读(1014)  评论(0)    收藏  举报