參考 https://blog.csdn.net/qq_36595013/article/details/80373597#3%E9%85%8D%E7%BD%AEapache
https://www.cnblogs.com/upwifi/p/4492261.html
https://www.lmdouble.com/104432785.html
步驟一 打開XAMMP(即xampp-control.exe)
步驟二 點擊Apache的“Config”按鈕,打開httpd.conf、httpd-ssl.conf文件
步驟三 把httpd.conf文件的80端口全部修改爲8000
改成 Listen 8000(必改)
ServerName localhost:8000
【如果不修改,會與默認80端口產生衝突,嚴重時可能導致瀏覽器不能正常使用。】
(注意:沒有更改Apache的端口時,使用的是 http://localhost 訪問xampp主頁;更改後, 假設80改爲了8081 則使用 http://localhost:8081 訪問xampp主頁, 訪問xampp下的其他php也是這樣)
步驟四 把httpd-ssl.conf文件把端口443修改爲4433
步驟五 重啓,點擊Apache的“start”按鈕,如果Apache變成綠色就說明配置成功。
但是也可能出現以下兩種錯誤。
第一種 錯誤
22:15:30 [Apache] Problem detected!
22:15:30 [Apache] Port 80 in use by "Unable to open process" with PID 4!
22:15:30 [Apache] Apache WILL NOT start without the configured ports free!
22:15:30 [Apache] You need to uninstall/disable/reconfigure the blocking application
22:15:30 [Apache] or reconfigure Apache and the Control Panel to listen on a different port
第一種可能是由於系統的服務佔用了80端口,要麼結束系統服務,要麼修改apache端口【如果你前面已經修改了apache端口就採用第二種解決方法】
第二種在xampp根目錄下有兩個個文件properties.ini和xampp-control.in
1、打開properties.ini,把紅色標註部分設置了其實端口,依次修改成apache_server_port=8000 apache_server_ssl_port=4433
---------------------------------------------
[General]
installdir=D:\xampp
base_stack_name=XAMPP
base_stack_version=1.8.3-1
base_stack_platform=windows
require_root_privileges=1
[Apache]
apache_server_port=80
apache_server_ssl_port=443
apache_root_directory=/xampp/apache
apache_htdocs_directory=D:\xampp/htdocs
apache_domainname=127.0.0.1
apache_configuration_directory=D:\xampp/apache/conf
apache_unique_service_name=
[MySQL]
mysql_port=3306
mysql_host=localhost
mysql_root_directory=D:\xampp\mysql
mysql_binary_directory=D:\xampp\mysql\bin
mysql_data_directory=D:\xampp\mysql\data
mysql_arguments=-u root -P3306
mysql_unique_service_name=
[PHP]
php_binary_directory=D:\xampp\php
php_configuration_directory=D:\xampp\php
-------------------------------------------------------------
2.打開xampp-control.ini,把紅色標註部分設置了其實端口,依次修改成 Apache=8088 ApacheSSL=4431
-----------------------------------------------
[ServicePorts]
Apache=80
ApacheSSL=443
MySQL=3306
FileZilla=21
FileZillaAdmin=14147
Mercury1=25
Mercury2=79
Mercury3=105
Mercury4=106
Mercury5=110
Mercury6=143
Mercury7=2224
TomcatHTTP=8080
TomcatAJP=8009
Tomcat=8005
-------------------------------------------
第二種 錯誤【service啓動路徑出現了錯誤。】
Apache Service detected with wrong path.
Change XAMPP Apache and Control Panel settings orUninstall/disable the other service manually first
Found Path: "H:/program files/xampp/apache/bin/httpd.exe" -k runservice
Expected Path: "h:/xampp/apache/bin/httpd.exe" -k runservice
爲什麼會有這個提示?
說明以前我有安裝過xampp,但在卸載的時候沒有卸載完全,雖然說把以前的安裝目錄等刪除掉了,但在註冊表中還有相關的信息殘留。通過定位註冊表的位置能夠看出有一條註冊表鍵值與錯誤提示中的路徑值相同,說明service啓動路徑出現錯誤的提示與這個有關係了。
那該如何解決呢?
方法就是修改註冊表值(註冊表系統龐大,且非常重要,爲避免出現誤操作在修改註冊表前建議進行備份)
按win+r或者開始菜單-所有程序-附件-運行,打開運行對話框,輸入regedit回車,然後根據上圖下方的提示依次
展開 HKEY_LOCAL_MACHINE-->SYSTEM-->CurrentControlSet-->services-->Apache2.4,注意右邊位置的
ImagePath記錄中的數據是"H:/program files/xampp/apache/bin/httpd.exe" -k runservice這個就是之前安裝的xampp的位置,
雙擊將其改爲現在安裝的路徑位置,也就是Expected Path提示的那個值("h:/xampp/apache/bin/httpd.exe" -k runservice)保存退出註冊表,然後重啓xampp這時你會發現這個提示錯誤沒了。