1. 程式人生 > >windows下啟動nginx閃退---(Windows平臺下80埠被System佔用解決辦法)

windows下啟動nginx閃退---(Windows平臺下80埠被System佔用解決辦法)

前言:
在專案中用到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啟動正常。
--------------------- 
作者:袁甜夢 
來源:CSDN 
原文:https://blog.csdn.net/ytm15732625529/article/details/79058372 
版權宣告:本文為博主原創文章,轉載請附上博文連結!