解决80端口被system占用

电脑的应用装多了,有时候不知不觉就会出现端口被之前某次安装的应用占用了

启动apache发现提示the requested operation has failed

查看端口占用情况:

查找占用80端口的进程的PID,根据PID找到进程


可以看到,80端口被system进程占用了;

之前80端口被占用时都是直接结束该进程,而这个进程是系统进程,系统进程是系统自带的进程,拥有0级优先权,这个优先级在注册表中可以查看(如下),因此是无法直接结束该system进程的,即使使用process explorer强制结束该进程也会出现电脑蓝屏之类的系统崩溃错误,所以该方式不可行。

start = {0,1,2,3,4}
0 == 由核心装载器装载
1 == 由I/O子系统装载
2 == 自动启动
3 == 手工启动
4 == 禁止启动

第一次尝试将注册表hkey_local_machine/systems/currentControlSet/services/HTTP的start设置为4,然后重启电脑,端口依然被占用;

最后尝试关闭http服务,成功解决端口被system占用:

关闭http服务:net stop http


sc config是Windows DOS系统下的命令,用来修改注册表和服务控制管理器数据库中服务项目的值。

设置http服务禁用:Sc config http start= disabled


③查看端口占用情况,80端口被system占用成功解决


<think>好的,用户的问题是关于如何释放被System进程占用80端口,特别是在Windows系统中遇到端口冲突的情况。我需要结合提供的引用内容,给出清晰的步骤。首先,要确认用户已经检查过端口占用情况,比如用netstat -ano命令找到PID,确认是System进程占用80端口。然后,根据引用中的方法,可能需要检查HTTP服务、修改注册表、停止相关服务,或者调整应用程序的端口。用户可能尝试过关闭IIS、SQL Server等,但问题依旧存在,所以需要更深入的解决方案。还要注意用户可能对命令行操作不太熟悉,需要步骤详细但简洁。另外,引用中提到禁用PeerDistSvc服务、使用netsh命令查看服务状态,以及修改注册表Start值为0,这些都需要逐步指导。同时,用户可能希望避免卸载软件,所以修改phpStudy端口的方法也是一个备选方案。需要综合这些信息,分步骤说明,并提醒重启的重要性。最后,确保回答结构清晰,每一步都有对应的操作和解释,帮助用户有效解决问题。</think>### 逐步解决方案:释放Windows中被System进程占用80端口 #### 第一步:确认端口占用状态 1. 打开命令提示符(管理员权限): - `Win + R` → 输入`cmd` → 按`Ctrl + Shift + Enter` 2. 执行命令定位占用进程: ```bash netstat -ano | findstr ":80" ``` - 若显示`PID=4`,则确认是System进程占用[^4]。 --- #### 第二步:排查具体服务占用 1. **检查HTTP服务状态**: ```bash netsh http show servicestate ``` - 该命令会列出所有使用HTTP协议的服务,观察是否有服务绑定80端口[^4]。 2. **禁用相关系统服务**: - 按`Win + R` → 输入`services.msc` - 找到并停止以下服务: - **World Wide Web Publishing Service**(IIS相关) - **SQL Server Reporting Services**(若安装过SQL Server) - **PeerDistSvc**(点对点分发服务) --- #### 第三步:修改注册表强制释放(关键步骤) 1. 打开注册表编辑器: - `Win + R` → 输入`regedit` 2. 定位到路径: ``` HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP ``` 3. 修改`Start`键值: - 双击`Start` → 将数值从`3`改为`0` → 点击确定[^1]。 - **此操作会禁用系统HTTP服务**,需重启生效。 --- #### 第四步:替代方案(避免修改系统服务) 1. **修改应用程序端口**(如phpStudy): - 打开phpStudy → 点击“配置” → 修改Apache/Nginx的监听端口为`8080`或其他空闲端口 → 重启服务[^3]。 2. **强制停止HTTP服务**: ```bash net stop http /y ``` - 若提示权限不足,需以管理员身份运行命令提示符。 --- #### 第五步:验证结果 1. 重启计算机后,重新执行: ```bash netstat -ano | findstr ":80" ``` - 若80端口占用,则操作成功。 2. **注意**: - 修改注册表后,部分依赖HTTP的系统功能(如Windows更新)可能受影响。 - 长期方案建议优先修改应用端口而非系统配置[^2][^3]。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值