windows下启动nginx闪退---(Windows平台下80端口被System占用解决办法)

2021年1月16日 33点热度 0条评论 来源: 一路向前!

前言:

在项目中用到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启动正常。

    原文作者:一路向前!
    原文地址: https://blog.csdn.net/ytm15732625529/article/details/79058372
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。