Apache服务器80端口被占用——解决方法web
80端口被占用解决办法有两种:windows
1.关闭占用80端口的程序,这时Apache服务器会正常启动;服务器
2.修改Apache的端口,好比改成8081;网络
详细讲解:app
第一种方法:socket
window7系统:在开始—运行中输入如下命令:url
一、cmd(该命令打开命令执行框),以下图spa
(图一)命令行
二、在命令行中输入 netstat -ano ,获得端口号对应的PID。见下图,红色框中表示占用程序的部分信息orm
(图二)
(补充: Netstat是在内核中访问网络及相关信息的程序,它能提供TCP链接,TCP和UDP监听,进程内存管理的相关报告。该命令的通常格式为 :netstat [-a][-e][-n][-o][-p Protocol][-r][-s][Interval] ,其中 -a 显示全部socket,包括正在监听的,-n 以网络IP地址代替名称,显示出网络链接情形,-o 显示拥有的与每一个链接关联的进程 ID等等,若有兴趣,可点击 Netstat(Netstat百度百科)。
三、经过相应的PID,打开任务管理器,点击“查看“菜单,选择“选择列”,给进程列表中添加”PID“列,而后找到PID对应的进程,选中该进程-——右键——选择“结束进程/任务"。
(图三)
或者 在命令执行框中,继续输入 taskkill /f /pid XXX(PID) 来结束相应进程/任务
此时,能够正常启动Apache服务器。
或者能够用更简单的方式:
一、一样在开始—运行中,输入cmd,打开命令执行框,如第一张图。
二、在执行行中,输入 netstat -ano|findstr "80";以下图
(图四)
三、继续输入 tasklist|findstr "4120" ;将输出以下相似信息:
映像名称 PID 会话名 会话# 内存使用
====== ======== ===== =======
thread.exe 0 Services 0 4k
而后输入下面语句,结束该进程/任务
taskkill /f /t /im thread.exe
若是查不到,直接打开任务管理器——进程 ,查看哪一个任务的PID是4120,而后右键——结束任务;
(补充:以上”4120“为示例,要结合实际);
(图五)
在windows8及以上系统,可以使用win+x快捷键,出现以下选项:
(图六)
选择命令提示符(C),就会出现图一,其余同理。
第二种方法(更改Apache服务器端口号):
Apache安装好后,在其安装目录下的conf文件夹内会有httpd.conf这样一个文本文档,它是Apache的配置文件,用于指挥Apache的运行,Apache默认的网页服务端口号当然就在这个里头配置(修改)。要修改这个文件,确定首先要打开它,直接双击就行,而后同时按下键盘上的Ctrl+F组合键,在弹出的“查找”对话框中输入Listen 80(以下图):
(图七)
(补充:若是使用appserv或xampp等软件,Apache是其子文件),以下图所示:
(图八)
在查找出来的“Listen 80”字符串中(仅此一处),将80改成8000或8080,总之只要是大家喜欢的数字均可以(关于端口号的知识不是此文要讲解的范围,本身去了解一下,端口也不能随意乱用哦)。在“Listen 80”的上方还有“#Listen 12.34.56.78:80”这样一串字符,这儿的80不是必定要随“Listen 80”中的80而变化,可改可不改,这只是一个样例。
结束上述操做后,同时按下键盘上的Ctrl+S组合键进行保存,而后关闭即完成对Apache默认网页服务端口号的修改,必定记得要中止(STOP)一次Apache服务而后再启动(START),使刚刚的修改生效。但要注意的是,若是你修改了默认端口号(假如将Listen 80改成Listen 8081),那么你将没法经过http://localhost或者是http://127.0.0.1来打开位于Apache服务器上的网页,必须在地址后面加上冒号+端口号,如http://localhost:8081或者是http://127.0.0.1:8081,只有这样才能访问位于Apache服务器中的网页。(见下图)
(图九)
ps:第一次发文,请各位多多指点