参考 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这时你会发现这个提示错误没了。