服务器显示AL018是什么意思,IIS服务器80端口却已被占用的问题
一、問題背景
在IIS中發布一個asp網站,發現無法使用80端口,錯誤為“無法啟動該網站。其它網站可能正在使用同一端口”。但其實IIS的其它網站已經沒有使用該端口了。這就需要設計到,找到那個進程占用這個80端口的問題了。
二、找到80端口被哪個進程占用
1、使用電腦快捷組合建Win+R打開快速運行,在運行窗口中輸入“cmd”命令點擊回車確定調出管理員命令提示符,緊接著輸入netstat -ano |more,或netstat -ano >result.txt, 再或者netstat -ano|findstr "80"
點擊回車后,顯示出一大段文字,找到 "本地地址" 為 0.0.0.0:80 的一行,在行的最后我們會看到 PID為"4"。記住次PID;如下圖所示:
3、打開Windows任務管理器,在進程中找到PID為"4"的程序,如下圖所示:顯示80端口被pid4 system占用。
三、80端口被進程占用解決
分析端口被占用原因:
該進程是Http.sys。它是http API的驅動組件,Http棧服務器。如果該端口被Http.sys占用,說明一些正在使用http.sys的應用程序在運行。通過netsh http show servicestate 命令能找出是哪個應用程序在使用Http.sys。
解決問題:
可以禁用http.sys。
禁用http.sys進程可以通過命令提示符來完成,首先輸入net stop http,然后確認繼續操作,在輸入Sc config http start= disabled即可停止該項服務。
且慢!
以上方式的禁用HTTP的方式,將直接導致IIS不能發布網站而喪失功能。如果此時你使用Tomcat或者Appache發布也無妨,如果再使用IIS發布網站將遭殃了。
此時,網上的教程是開啟Word Wide Web Publishing Service,但是,你真的去操作了,將無論如何也無法開啟服務。此時,解鈴還須系鈴人,是因為以上的操作的原因,看好了。否則你將被網絡上的所謂的解決方法弄的一頭霧水。
四、解決禁用HTTP造成的IIS無法使用的問題
對于之前是因為輸入了
net stop http
sc config http start=disabled
付出的代價再要回來。
第一步:在命令提示符里輸入
sc config http start=demand & net start http就行了。
第二步:你要是不放心,再輸入
sc config http start=enabled,它會提示所請求的服務已經啟動。
第三步:再輸入netstat -ano驗證下會發現
80端口又被pid=4的東東占用了。
4.更改好之后,啟動world wide web publishing service,然后應該可以搭建服務器了。之后最好重啟下電腦(不重啟應該沒關系,重啟之后world wide web publishing service會自動啟動,不需要手動了,要是你還是有問題,我也黔驢技窮了。)?? good luck!
五、最終問題該如何解決
那么問題來了,如何讓System進程4不占用80端口?
問題解決的正確打開方式是,在網站綁定設置時,不要在主機名那里設置本機的IP,直接空著就好!汗顏了,自己之前的一個誤操作,搞了大半天才發現是這樣的一個烏龍。
參考文章
總結
以上是生活随笔為你收集整理的服务器显示AL018是什么意思,IIS服务器80端口却已被占用的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里消息队列mq服务器,阿里的架构之路—
- 下一篇: Code Chef December C