运行Apache时出现如下错误提示:
此时就说明Apache的80端口或443端口被占用,导致程序无法正常运行。
解决80端口被占用的情况
找到运行在80端口的进程,然后结束掉。方法如下:
windows+r并输入cmd打开命令行,输入命令“net stop http”(80端口支持http协议),会有如下提示:
从图中可以看出在我的主机上此时占用80端口的进程只有一个“Print Spooler”打印机服务,输入“Y”确认关闭进程。还可以在在显示器下方空白处右键“启动任务管理器”,再选择结束进程“Print Spooler”。
设置完成。
解决443端口被占用的情况
Apache另一种无法运行的错误有时是因为443端口被占用,此时有两种解决方式:
查看443端口占用情况
windows+r输入“cmd”命令进入到命令行模式,输入命令“netstat -ano”查看主机中所有正在运行的进程占用的端口号,如下图所示:
由上面的命令行可以看出,占用443端口的为PID为1316的进程
解决方案
(1)修改Apache的443端口为其他不常用端口:在XAMPP control panel中右键点击“Config”并进入“httpd-ssl.conf”,可以在这里修改xampp的443端口,将其改为444(不常用端口),重启Apache,此时就可以运行成功。
(2)直接关闭占用443端口的进程:记下占用443端口的进程号(如本机的443端口被进程号为1316的进程占用),继续在命令行输入命令:tasklist|findstr “1316”,可以找到此进程,如本机的vmware-hostd.exe
要关闭这个进程,可以在显示器下方空白区域单击右键,进入“启动任务管理器”界面,选中这个进程右键单击选择“结束进程”可以关闭掉这个进程。重新启动Apache,配置完成。