商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 系统应用 > Windows 10 提示“端口已被占用”怎么办

Windows 10 提示“端口已被占用”怎么办

  发布于2026-08-19 阅读(0)

扫一扫,手机访问

Windows 10端口被占用时,应先用netstat -ano | findstr ":端口号"查PID,再用tasklist | findstr "PID"确认进程名,最后执行taskkill /PID PID /F强制终止;若PID为4则属系统级占用,需通过关闭IIS等Windows功能释放。

Windows 10 提示“端口已被占用”怎么办

Windows 10 提示“端口已被占用”时,服务或开发工具无法启动,常见于本地调试(如 Vue DevServer 占用 8080、Node.js 占用 3000、IIS 占用 80),必须定位并终止实际占用进程,否则重启软件或重装系统都无效。

用命令提示符精准定位并释放端口

这是最通用、无需图形界面的方法,适用于所有 Windows 10 版本,且能直接获取 PID 并终止进程。

按下 Win + R → 输入 cmd → 右键命令提示符标题栏 → 选择“以管理员身份运行”。

执行命令:netstat -ano | findstr ":8080"(将 8080 替换为你被占的实际端口号,注意冒号不能省略)。

若返回结果中最后一列为 1234,说明 PID 是 1234;若无输出,代表该端口当前未被任何进程监听——请检查是否输错端口号或服务尚未启动。

通过执行 tasklist | findstr "1234" 来查看进程名。要是显示的是 ja va.exe 或者 node.exe 这类能够安全终止的程序,那就可以接着进行下一步;但要是显示的是 System 并且PID为4,那大概率就是被HTTP.sys驱动或者IIS占用了,绝不能直接用taskkill,得采用系统服务方案才行。

确认无误后,执行 taskkill /PID 1234 /F 强制结束进程。这一步会立即释放端口,无需重启。

用资源监视器可视化排查

适合不熟悉命令行、需要快速确认端口与进程对应关系的用户,界面直观,避免手误杀错进程。

按下 Win + R → 输入 resmon → 回车打开资源监视器。

切换到“网络”选项卡 → 滚动到底部,点击“侦听端口”右侧的三角箭头展开列表。

在展开的表格中,直接查找目标端口号(如 3000),注意核对“映像名称”列,确认是不是你正在开发的应用或调试工具。

右键该行 → 选择“结束进程”。此时系统会弹出确认框,勾选“仍要结束进程”后点击确定。

用 PowerShell 一键查杀(推荐给开发者)

PowerShell 命令更简洁,支持管道直出进程名,减少人工比对环节,特别适合写成脚本批量处理多个端口。

第一步:按 Win + X → 选择“Windows PowerShell(管理员)”。

第二步:执行以下命令(将8080替换为你的端口):
Get-NetTCPConnection -LocalPort 8080 | ForEach-Object { $pid = $_.OwningProcess; Write-Host "PID: $pid"; Get-Process -Id $pid | Select-Object ProcessName, Path, ID }

第三步:命令执行后会清晰列出进程名、完整路径和 PID;若路径指向 C:UsersxxxAppDataRoamingnvmIntelliJ IDEA 目录,基本可判定为开发环境残留进程。

第四步:复制 PID,执行 Stop-Process -Id 1234 -Force(替换 1234 为实际 PID)。

处理系统级端口占用(如 80/443 被 PID 4 占用)

netstat -ano | findstr ":80" 返回 PID 为 4,且 tasklist | findstr "4" 显示映像名为 System,说明是 Windows 内核级服务(HTTP.sys)在监听,强行 taskkill 会失败甚至导致蓝屏。

先运行 netsh http show servicestate,查看“注册 URL”列表中是否包含 http://+:80/ 类条目,以及其对应的“应用程序 ID”。

若看到类似 DefaultAppPoolW3SVC,说明是 IIS 或 WAS(Windows Process Activation Service)在托管 HTTP 流量。

打开“控制面板 → 程序 → 启用或关闭 Windows 功能” → 取消勾选“Internet Information Services”及其全部子项 → 点击确定 → 等待系统应用更改。

完成后重启电脑,80/443 端口即被彻底释放。此操作不会影响普通上网或非 Web 服务。

本文转载于:https://www.php.cn/faq/3013320.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注