XAMPP環境下無法啓動Apache的問題

這篇博客是爲了記錄一下本人在學習PHP的過程中遇到的問題,也算是學習筆記吧,第一次寫博客,不對的地方請多多指正。

在XAMPP試着啓動Apache,但是卻失敗了。網上查找到了一些方法,比如更改80和443端口爲其他(如800和4430),但是這有時候又會帶來其他不便,如果你不想修改端口ID,那就可以接着看下。
圖中可以看到Apache試着啓動但是失敗了
這時候可以將問題定位爲:80或443端口被其他進程佔用
一開始以爲是因爲我以前單獨安裝了Apache,以及後來安裝了phpstudy導致端口被佔用的原因。但是我發現把原來的東西全刪了,還是無法啓動。。。

這時可以有兩個方法可以看端口狀態
#方法一:
打開XAMPP界面,點擊右上角的Netstat,便可以查看相關信息。
在這裏插入圖片描述
在這裏插入圖片描述
上面可以看到httpd.exe在使用80和443端口以及對應的PID(port ID),這當然是沒錯的情況,因爲這裏是問題修復後截的圖。
因爲這種查詢方法依賴XAMPP,所以我個人還是覺得第二種方法更通用

#方法二:

  1. Win+R
  2. 輸入cmd,確定
  3. 進入cmd命令窗口
  4. 輸入netstat -ano 查看機器所有端口占用情況

當然這樣會輸出很多信息,也不便於發現問題,所以要通過指定特定字符串查詢
這裏以443端口爲栗子
輸入
netstat -ano|findstr 443(或)netstat -ano|findstr “443”
在這裏插入圖片描述
從上圖可以看到PID爲7224的進程佔用了443端口,
接下來我們要看看PID爲7224對應的進程是什麼?

輸入命令
tasklist|findstr 7224
在這裏插入圖片描述
這裏看到了是vmware-hostd.exe這個服務佔用了443端口導致Apache無法啓動

這是因爲我的電腦既安裝了VMware虛擬機軟件,又安裝了XAMPP。
···
這是因爲vmware-hostd.exe默認是使用443號端口的,而它又是默認自動啓動的。
我們知道,Apache 的 httpd 服務默認是使用80端口的,而 httpd-ssl 默認是使用443端口的。這就導致了443號端口的衝突。
解決方法:
Win+R,輸入services.msc,點擊確定進入“服務”,找到顯示名稱爲“VMware Workstation Server”的服務,右鍵,屬性,將啓動類型改爲手動,並停止該服務即可。
在這裏插入圖片描述
在這裏插入圖片描述
這種方法一般也不會影響VMware的正常使用。VMware Workstation Server 服務的描述信息爲“Remote access service for registration and management of virtual machines.”,也就是說它與遠程管理VMware有關。而我們一般也不會使用到VMvare的遠程訪問功能,所以這種方法基本沒有影響。

方法引用於:
https://www.jianshu.com/p/a370ebdc0d44

問題修復後,XAMPP可以正常啓動Apache服務。
在這裏插入圖片描述
打開瀏覽器,輸入localhost就可以看到問題解決啦!
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章