Windows下80端口被進程System占用的解決方法
昨天剛更新了Windows10,總體上來說效果還是蠻不錯的,然而今天在開啟Apache服務器的時候卻發現,Apache莫名其妙的打不開了,起初以為是權限的問題,於是使用管理員身份的控制臺去調用命令net start Apache2.4,結果依然是無法打開。手動啟動服務報錯“Windows不能再本地計算機啟動Apache,有關更多信息,查閱系統時間日誌。如果這是非Microsoft服務,請與服務廠商聯系,並參考特定服務錯誤代碼1。”如下圖所示:
看到這種情況,我有手動cd到Apache的httpd.exe的目錄,執行了一下httpd,這下原因找到了,如下圖所示:
從圖中可以看到錯誤的原因是套接字綁定錯誤,這下可以確定是Apache的80端口被占用了。於是就使用命令 netstat -ano 來查看一下到底是哪個程序占用了80端口,如圖所示端口查找的結果:
看到80端口被PID為4的System進程占用,呵呵,我想說一句我擦嘞什麽鬼+_+。仔細想了想,一般的程序不會占用80,遂使用命令 netsh http show servicestate 查看一下當前的http服務狀態,發現果然有問題,如下圖所示:
圖中可以看到,80端口被一個DefaultAppPool的東西占用了,如果用過IIS的童鞋,這時候肯定一定想到了原因,這裏我們依然要接著往下找原因,圖中可以看出控制器進程ID為4640,那麽就 就繼續查看一下4640進程是什麽鬼,進入任務管理器,找到PID4640的進程,右鍵轉到服務,可以看到當前的進程所在的服務,如圖所示:
看到圖中的服務,這裏原因也就找到了,IIS的World Wid Web Publishing Service 萬維網服務的問題。
解決方案:
控制面板–>程序–>啟用或者關閉Windows功能–>找到Internet Information Service,將其關閉即可
最近電腦時不時就發生了80端口被占用的情況,簡單百度解決後,當重啟電腦的時候又發生被占用的情況.今天非常幸運的是,發生了80端口和8080端口都被占用了情況,忍無可忍決定下定決心解決這個坑爹的問題,經過重新百度完美地解決了這個問題,下面貼出解決方法:
一:原文地址: http://www.2cto.com/os/201505/399603.html
我的占用原因是 SQL Server Reporting Services,停止掉這個服務並設置其為手動啟動即可
如果你並沒有安裝 SQL Server,請參考下文解決
===============================================================================
突然發現 80 端口被莫名占用,咋一看還是 System 這個進程
又無法結束這貨,於是開始慢慢查看到底是什麽東西占用了
首先,打開 cmd 跑這一句,80 端口被System 占用,肯定是 HTTP 服務搞的鬼
?
1 |
netsh http show servicestate
|
看到 REPORTSERVER 略顯疑惑
我們繼續看,得到使用 80 端口的 PID了,還等什麽?開 taskmgr!(任務管理器)
任務管理器查看 PID 的方法:
上方在 cmd 中,我們得到 PID = 4212,現在我們看看是什麽東西在作怪
看到上圖的結果,恍然大悟!如果大家不確定那是一個什麽進程,我們對他右鍵 - 打開文件所在位置
這下大家應該都明白了吧。我這個占用的根本是 SQL Server 的報告服務
最後我去 services.msc 裏停止他並設置這個服務為手動就搞定了。
如何查看當前 80 端口占用情況:
?
1 |
netstat -ano | findstr 0.0 . 0.0 : 80
|
這段命令輸入後回車,中間無內容即表示無占用
二:原文地址:https://www.caogenjava.com/detail/75.html
今天筆者想在server2008服務器上用80端口跑個項目,但是系統提示80端口被占用,端口被占用這在開發過程中是常見的事情,查一下被誰占用了,幹掉他不就完了。一查不要緊,結果太詭異,使用netstat -ano命令查看,80端口被pid的為0的進程給占用了,用任務管理器一看,這個pid為0的進程竟然是系統閑置進程即system idle process,這個進程可是幹不掉的,於是乎一通百度。
首先在一篇百度文庫裏找到了一篇帖子,說的是被sqlserver數據庫給占用了,因為我那臺服務器確實也安裝了該數據庫,原以為就是它的原因,但是按照文章中的說明處理之後80端口還是被占用,重啟服務器之後依舊。那篇帖子地址是這個:《解決Windows Server 2008 System進程占用80端口》。
最終終於在其他帖子裏找到了答案,廢話不多說,直接上方案。
打開設備管理器,點擊菜單欄中的查看-->顯示隱藏設備,這時候你能看到非即插即用驅動程序,展開,找到HTTP,雙擊切換到驅動程序選項卡,將類型設為已禁用,確定,重啟系統。(註:理論上,你直接點停止也是可以的,但是我點擊之後系統總是卡死。禁用還是要設置的,否則系統重啟之後80又被占用了)
Windows下80端口被進程System占用的解決方法