80端口一般被當(dāng)做網(wǎng)頁服務(wù)器的默認(rèn)端口,使用本機(jī)搭建服務(wù)器環(huán)境的時候,都會默認(rèn)使用80端口來作為網(wǎng)頁訪問端,但是有的時候80端口會被其他的不明身份的程序占用,導(dǎo)致 apache 啟動失敗,修改 apache 的默認(rèn)端口后訪問本機(jī)地址又非常麻煩。下面介紹一下如果80端口被占用后應(yīng)該如何處理。
修改 apache 的默認(rèn)端口(強(qiáng)迫癥不要用)
修改 apache 端口的方法是最妥協(xié)的方法了,后果是當(dāng)你開啟 apache 服務(wù)器的時候,訪問的本機(jī)地址將會附帶端口號,比如 http://www.xlyVPS.com:8888 。
修改方式是直接修改 httpd.conf 文件,文件的位置在 apache 安裝目錄下的 conf 文件夾下,直接用記事本打開,找到 Listen 80 ,將80修改為其他未被占用的端口。
注:httpd.conf 文件中,以#開頭的行是關(guān)閉的,不生效的,不以#開頭的行是啟用的。
查找80端口被誰占用的方法
進(jìn)入命令提示行(開始運(yùn)行輸入 CMD),輸入命令 netstat –ano ,就可以看到本機(jī)所有端口的使用情況,一般80端口在第一行,截圖顯示,端口已經(jīng)被占用,PID 中寫明 LISTENING 4。
PID=4 的程序是哪一個呢?接著在命令提示和下輸入指令 tasklist ,列出所有當(dāng)前運(yùn)行的進(jìn)程,
發(fā)現(xiàn) PID=4 的進(jìn)程,居然是 system 。
取消 system 進(jìn)程對80端口的占用
其實本身我用的 apache 好好的,只是突然不能啟動了,回想在此期間新安裝的軟件,面子這么大,能讓系統(tǒng)占用80端口的,也只能有 sql Server 2008 了。經(jīng)過查詢,發(fā)現(xiàn)占用80端口的確是 sql Server 2008 里面的組件——sql Server Reporting Services (MSsqlSERVER)。是 sql Server 的日志系統(tǒng),就是他好端端的突然占用了80端口,而且對于普通人來講,這個組件的作用沒啥用,關(guān)掉也是節(jié)約資源。
關(guān)閉方法很簡單,在運(yùn)行框中輸入 services.msc ,進(jìn)入服務(wù)窗口。或者直接在開始菜單里面的搜索框中輸入“服務(wù)”即可打開。然后找到 sql Server Reporting Services (MSsqlSERVER) 這個服務(wù),然后停止,被占用的80端口就被釋放出來了。你也可以設(shè)置它的啟動方式為“禁用”。
看清楚了,就是它。
另外的一個被占用的原因
除此之外,我還在網(wǎng)上找到了另外80端口被 system 占用的原因,就是微軟家的 IIS 服務(wù),關(guān)閉方式可以去控制面板去關(guān)閉即可。