xampp(apache+mysql+php+perl)是一個功能強大的建站集成軟件包。許多人通過他們自己的經驗認識到安裝 Apache 服務器是件不容易的事兒。如果您想添加 MySQL、PHP 和 Perl,那就更難了。應用xampp可以輕松地在各種系統下搭建php等程序的運行環境。
今天應用xampp修改wordpress的時候發現一個嚴重的問題,apache啟動不了,不論點擊多少次start,都顯示如下:
busy…
apache started [port 80]
經多方查詢資料,原來是因為80端口被別的程序占用了,所以這個端口很busy,從而導致apache無法啟動的。解決方法一如下:
1、運行-cmd,然後輸入netstat -ano,回車;
2、查看本地地址中包含xx.xx.xx.xx:80的那一行的pid,為幾個數字,把這幾個數字記下來;
3、啟動“任務管理器”——“進程”,在工具欄——“選擇列”前面的框打上勾;
4、然後查看與剛才那個pid對應的是哪個程序,很容易就會找到,就是它占用了80端口;
5、直接將其停止或者使用優化大師等工具使之開機不啟動。
好了,可以用了。
第二種解決方法:更換端口
我的asp用的iis服務器是xp的默認web80端口,jsp用的tomcat服務器用的是tomcat安裝時的默認端口8080,那麼php下xampp裡邊的apache我就將它的默認80端口修改為8081(隨便其它的只要不被占用就可以了)其它的不就ok了
既然如此如何修改apache的端口呢? 到xampp的安裝目錄下,點擊進入apache\conf下,可以看到“httpd.conf”文件,用文本煸輯器打開,將所有的80修改為8081, Listen 80 -〉Listen 8081
ServerName localhost:80-〉ServerName localhost:8081
然後在XAMPP Control Panel中重新啟動apache。
怎麼還顯示如下:
busy…
apache started [port 80]
管它三七二十一,在ie裡輸入地址:http://localhost:8081測試,打不開,都修改apache的端口了,試著停止iis的web服務。再啟動
apache。還顯示如下:
busy…
apache started [port 80]
ie裡輸入地址:http://localhost:8081測試,成功打開xampp的網頁,提示:
歡迎使用XAMPP for Windows Version 1.7.0 !
祝賀您:
您已經成功安裝了XAMPP!
雖然在xampp-control的對話框中還是顯示apache啟動了80端口,但實際的占用端口是8081。再重新啟動iis服務,apache和iis都可以在各自的8081和80端口工作了。
重新啟動電腦,apache又不能用了,試著 關閉iis服務,啟動apache -〉http://localhost:8081測試成功;接著啟動iis服務,
http://localhost:8081測試成功
真的是個好奇怪的調試過程,不管怎麼說,是可以用了,
直接xampp\apache_start.bat啟動apache,出現提示443端口占用,原來IIS占用了ssl端口(即443端口 https),這就好辦了,修改xampp\xampp\apache\conf\extra\httpd-ssl.conf文件 ,將所有的 443 都修改為 4433 或關閉ssl服務,再次測試一切ok了。
當然作為開發調試環境如果不需要ssl服務可以關閉ssl服務,方法還是修改xampp\apache\conf\httpd.conf文件,找到"Include conf/extra/httpd-ssl.conf "用 #字符 注釋掉就關閉ssl服務了。
xampp調試過程邊做邊寫,思路隨亂......
解決常見問題分析方法:
用xampp啟動apache時提示busy,apache started.提示說started,但是在apache服務器後的狀態並沒有顯示running,表明沒有啟動成功。
解決方法:
1.在xampp控制面板啟動apache如啟動不成功.
2.進入xampp的安裝目錄下的apache目錄,如c:\xampp\apache\logs\
3.可以看到有個error.log的文件.
4.打開該文件,到文件最後,可以詳細了解到啟動失敗的原因。
5.針對不同的失敗原因,尋求解決之策。
解決案例
1.在xampp控制面板啟動apache不成功
2.進入error.log查看,顯示”make_sock: could not bind to address 0.0.0.0:80
no listening sockets available shutting down”
3.可以看傣,這是在偵聽80端口時個錯,可能80端口已經被其它應用程序占用了。apache啟動不成功絕大部分都是因為端口問題。
4.打開c:\xampp\apache\conf\目錄
5.目錄下有一個httpd.cnf文件,用記事本打開,將裡面的”80″全部修改為其它端口例如”8082″修改之後,保存退出。
6.重新在xampp控制面板,啟動apache,成功,狀態為running.
注意:因為浏覽器的默認端口是80所以修改了apache的偵聽端口之後,在浏覽器中浏覽時,需要localhost後加上端口。如http://localhost:8082/代替修改前的http://localhost/,當然localhost = 127.0.0.1,用http://127.0.0.1:8082/同樣。