我從會做網站到現在也遇到過了N次了,今天又讓我遇到了,我來解決他,並為大家做最詳細易懂的分析。
我的情況:我用了一個小插件“黑風Aspweb服務器”代替IIS,盡管如此IIS組件也是要裝的。停止IIS中的“默認網站“,意味着停止了80端口的運行,然后打開“黑風Aspweb服務器”即可正常測試網站。
故障現象:今天“默認網站“已經停止,但是打開“黑風Aspweb服務器”還是提示“80端口被占用”。
解決過程:打開命令提示符——netstat -ano,就可以查看本機端口開放情況與對應的程序。如下圖:
圖中,可以看出,21、25以及80端口都被PID(進程標識符)為:5668的進程所占用。現在,只要知道PID為5668的進程就可以解決了。
2、打開任務管理器,如下圖:
圖中,可以看出PID:5668對應的進程為inetinfo.exe。(稍后解釋inetinfo.exe進程)
最后操作:結束該進程,重啟或停止IIS“默認網站”,不論如何inetinfo.exe都會自動重新運行,然后,再停止IIS“默認網站”,運行“黑風Aspweb服務器”,即可解決。
注:進程PID是可以變化的,就是說不同時間運行同一個程序,他的PID號就不同。不同計算機同一個進程的PID號多數情況也是不同的。因此,在結束inetinfo.exe之前的PID是一個三位數,重新啟動后,它的PID可能為四位數了。這點不影響問題的解決,我只是好奇,便拿出來說罷了。
=====================
inetinfo.exe:
正常情況下,inetinfo.exe主要用於支持微軟Windows IIS網絡服務的除錯。這個程序對你系統的正常運行是非常重要的。 屬於系統組件,不要刪除! 他對應的系統服務是 IIS admin Service 或 world wide web publishing service 。如果你停止 IIS admin Service ,那么系統會自動停止world wide web publishing service 、FTP以及SMTP服務。就是上面對應的80、21以及25端口。很好理解。
至於為什么會出現“默認網站“已經停止了,而inetinfo.exe進程還在運行(只要安裝了IIS組件,就會有這個進程的),而且80端口被它占用的問題,就復雜了,我們不需要也沒必要知道為什么,知道了原理並解決了問題才是關鍵,不是嗎,呵呵~~
當然,也可以嘗試,重新啟動計算機試試,或者重裝IIS試試,也有的人說是卡巴的網絡設置,有時間都可以區嘗試看看。
windows 如何查看端口占用情況?
第二種方法
開始--運行--cmd 進入命令提示符 輸入netstat -ano 即可看到所有連接的PID 之后在任務管理器中找到這個PID所對應的程序如果任務管理器中沒有PID這一項,可以在任務管理器中選"查看"-"選擇列"
經常,我們在啟動應用的時候發現系統需要的端口被別的程序占用,如何知道誰占有了我們需要的端口,很多人都比較頭疼,下面就介紹一種非常簡單的方法,希望對大家有用
假如我們需要確定誰占用了我們的9050端口
1、Windows平台
在windows命令行窗口下執行:
1.查看所有的端口占用情況
C:\>netstat -ano
協議 本地地址 外部地址 狀態 PID
TCP 127.0.0.1:1434 0.0.0.0:0 LISTENING 3236
TCP 127.0.0.1:5679 0.0.0.0:0 LISTENING 4168
TCP 127.0.0.1:7438 0.0.0.0:0 LISTENING 4168
TCP 127.0.0.1:8015 0.0.0.0:0 LISTENING 1456
TCP 192.168.3.230:139 0.0.0.0:0 LISTENING 4
TCP 192.168.3.230:1957 220.181.31.225:443 ESTABLISHED 3068
TCP 192.168.3.230:2020 183.62.96.189:1522 ESTABLISHED 1456
TCP 192.168.3.230:2927 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2929 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2930 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2931 117.79.91.18:80 ESTABLISHED 4732
2.查看指定端口的占用情況
C:\>netstat -aon|findstr "9050"
協議 本地地址 外部地址 狀態 PID
TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING 2016
P: 看到了嗎,端口被進程號為2016的進程占用,繼續執行下面命令: (也可以去任務管理器中查看pid對應的進程)
3.查看PID對應的進程
C:\>tasklist|findstr "2016"
映像名稱 PID 會話名 會話# 內存使用
========================= ======== ================
tor.exe 2016 Console 0 16,064 K
P:很清楚吧,tor占用了你的端口。
4.結束該進程
C:\>taskkill /f /t /im tor.exe
其他不懂的用 help吧~