【Nginx80端口被占用】80端口被System占用如何解决

Nginx80端口被System占用如何解决

问题:

  1. 运行netstat -ano发现80端口被pid=4的进程占用
  2. 打开任务管理器,发现pid=4的进程,其实是system进程,其对应的进程描述是NT kernel & system。

解决方法 一:

http协议里的某个进程占用了80,但是在任务管理器显示的是System,是http协议的某个进程占用(这个进程是无法停止的,只有在cmd.exe里使用net stop http来停止):

  • win + r 输入 cmd启动命令行;
  • 在命令行输入netstat -ano可以查询到所有端口的使用情况;
    【Nginx80端口被占用】80端口被System占用如何解决_第1张图片
  • 如图所示,端口已经被占用,PID 中写明 LISTENING 4;
    【Nginx80端口被占用】80端口被System占用如何解决_第2张图片
  • 通过任务管理器找到对应的 PID=4的程序,是 System,并且无法用任务管理器的方法结束任务。
    【Nginx80端口被占用】80端口被System占用如何解决_第3张图片
  • 使用net stop http来停止;
    【Nginx80端口被占用】80端口被System占用如何解决_第4张图片
  • 按y确定继续;
    【Nginx80端口被占用】80端口被System占用如何解决_第5张图片
    【Nginx80端口被占用】80端口被System占用如何解决_第6张图片
到这里大部分人都成功了就不需要再继续下面内容 直接启动nginx.exe就可以了
  • 在网上搜索发现有些不能成功停止,显示HTTP服务无法停止,使用管理员方式再试试,还是无法停止,先不管
    【Nginx80端口被占用】80端口被System占用如何解决_第7张图片
  • 输入 Sc config http start= disabled
    在这里插入图片描述
  • 重启
  • 测试,PID4还是启动的。但是80已经不被占用了。发现445端口被PID4 占用的。
    【Nginx80端口被占用】80端口被System占用如何解决_第8张图片

解决方法 二:

  1. cmd界面输入查询命令

  2. netstat -ano|findstr 80

  3. 查询0.0.0.0:80最后是被哪个线程占用

  4. 去任务管理器结束相应线程
    【Nginx80端口被占用】80端口被System占用如何解决_第9张图片

  5. 如果是被系统进程占用,结束不了,去注册表这个路径
    计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
    Start的值改为0保存并重启电脑
    【Nginx80端口被占用】80端口被System占用如何解决_第10张图片

  6. 如果还是没解决,在此电脑右键,点击管理,进入服务,找到SQL Server ReportingServices (SQLEXPRESS)
    【Nginx80端口被占用】80端口被System占用如何解决_第11张图片

  7. 把它停止并改为手动运行,nginx软件就能启动成功了

解决方法如下图:

【Nginx80端口被占用】80端口被System占用如何解决_第12张图片
【Nginx80端口被占用】80端口被System占用如何解决_第13张图片

你可能感兴趣的:(Java,服务器,运维,linux,nginx)