黑马程序员技术交流社区

标题: 【上海校区】Windows平台下80端口被System占用解决办法 [打印本页]

作者: 舞出我人生    时间: 2019-1-22 14:55
标题: 【上海校区】Windows平台下80端口被System占用解决办法
本帖最后由 舞出我人生 于 2019-1-22 15:03 编辑

前言:      
     在项目中用到nginx,启动时闪退,查看错误日志,给出的错误如下:
     nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access  a socket in a way forbidden by its access permissions)
分析:
     nginx的默认端口是80,通过错误日志可以看出是80端口被占用导致了nginx无法启动。
解决办法:
   1、按键win+R打开运行界面,输入cmd进入控制台界面
   2、输入netstat -ano | findstr ":80 "
     通过上述命令查看80端口占用情况,查看后,pid的值为4。
      

   3、输入tasklist /fi "PID eq 4"
     通过上述命令查看4所对应的服务名称,为System

        
   4、在运行中输入regedit打开注册表编辑器
     

  5、找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP
      

  6、找到Start,右键修改将其制改为4。
   

  7、重新启动系统,System进程就不会占用80端口,nginx就可以正常启动。

    可以通过步骤2查看80端口占用情况8、再次启动nginx,可以正常启动,可以在任务管理器中查看到nginx的进程
   

总结:

        这次的nginx启动闪退是由于System占用了80端口所导致的,通过修改注册表编辑器中HTTP下Start所对应的值来释放System所占用的80端口。从而是nginx启动正常。








作者: 一个人一座城0.0    时间: 2019-1-23 08:48
看一看。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2