【原】解决 "安装xmapp后Apache不能正常启动" 问题

小伙伴们安装xmapp后发现Apache不能正常开启,下面给出了不同情况的解决办法,可以分为以下几种情况分析问题:

(一)是否在本次安装之前已经安装过xmapp(没有请跳过)

在本次安装之前已经安装过xmapp,虽然卸载了,但是会有卸载不干净的情况,卸载时最好使用程序本身自带的卸载程序(即运行uninstall.exe进行卸载),最好不要使用控制面板中的卸载功能,卸载过后一定不要忘记去检查注册表中是否已经删除,注册表查看方式:

1.按键盘上的 win键+R键,弹出"运行"窗口

2.输入regedit,点击确定,进入注册表。

3.按照目录结构找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ 下面的xmapp和MySQL,然后删除(如果安装时同时安装了MySQL)。

4.重启电脑,重新安装即可。

(二)Windows7安装xmapp(Win8以上也可使用此方法,不通过继续往先看)

Windows7安装xmapp后,如果出现了Apache无法正常启动,只需要直接修改与Apache相关的文件即可(即修改文件中预先设置好的端口号值就可以了),按照以下步骤进行操作:

1.修改httpd.conf文件。在/xampp/apache/conf/extra/httpd.conf位置(xmapp的安装目录下),修改此文件是为了解决80端口占用问题,把Listen 80 修改为 89即可(可以自定义为其他数值,只要修改后的端口不被占用即可),如果配置了vhosts的话请把httpd-vhosts.conf中端口改为89(与httpd.conf文件中的89端口号保持一致)

2.修改httpd-ssl.conf 文件。在/xampp/apache/conf/extra/http-ssl.conf位置(xmapp的安装目录下),修改此文件是为了解决443端口占用问题,把Listen 443 修改为 444即可(可以自定义为其他数值,只要修改后的端口不被占用即可)

)Windows8、Windows10系统安装xmapp

对于Win8和Win10系统来说,80端口号会被系统本身占用,这种情况下可以直接修改对应文件中的端口号(第一种解决方案),其实还可以这样做:

1.按键盘上的 win键+R键,弹出"运行"窗口,输入cmd进入DOS窗口

2.输入netstat -aon | findstr :80 ,然后回车。

3.查看80端口对应的PID值,发现还是一个系统进程,并且无法直接kill。

4.打开注册表(打开方式同上),按照目录结构找到找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP

5.在右边一栏中找到Start这一项,鼠标点击选中,然后鼠标右击,找到“修改”,将“数值数据”“3”改为:“0”

6.然后再次关机重启,System进程就不会占用80端口了。

7.重启之后,再启动Apache,就可以看到Running了,启动成功。

声明:因为Win10系统尚有很多未知兼容性问题,所以不能保证所有人的情况都绝对一样。可参考资料:漠阳子博客(有图版)!

分享:cmd命令行方式下查询 端口号与PID的方式

netstat -ano:查看已占用的端口,记下端口对应的PID,然后打开任务管理器,找到对应的PID,结束进程,如果结束不了或者结束后还不起作用,就用ntsd命令。

ntsd -c q -p PID:这里的PID,是要终止的进程的PID,然后打开任务管理器,找到对应的PID,结束进程即可。(参数-p表示后面必须是PID值, -c q表示执行退出Ntsd的调试命令)

tasklist:列出所有的进程和相应的信息,而tskill能根据PID(进程ID)进程名等方式杀死进程。

解决xmapp中Apache端口号占用问题的更多相关文章

  1. windows / linux系统中,端口被占用解决方法

    一.在windows操作系统中,查询端口占用和清除端口占用的程序 提升权限后用:netstat -b或用 1.查询端口占用的进程ID 点击"开始"-->"运行&qu ...

  2. java web中 8080端口号被占用的问题处理,终于明白了 Address already in use: JVM_Bind(端口冲突)

    1.错误描述 2011-7-20 11:05:18 org.apache.catalina.core.StandardServer await严重: StandardServer.await: cre ...

  3. tomcat解决端口号占用问题

    1.第一种方法 更改tomcat自己的端口号: conf 目录下 找到 server.xml,把默认的8080端口改个别的试试,tomcat 一般端口号改的要大于 6000,. 2.第二种方法 关闭端 ...

  4. Nginx完美解决前后端分离端口号不同导致的跨域问题

    笔者在做前后端分离系统时,出现了很多坑,比如前后端的url域名相同,但是端口号不同.例如前端页面为:http://127.0.0.1/ , 后端api根路径为 http://127.0.0.1:888 ...

  5. linux查看端口号占用命令-netstat

    题记 经常会发现,很多时候我们在运行一些带有端口的程序时,程序经常会报端口被占用的问题,比如Tomcat 8080,端口起不来. 查看端口号 netstat 如果发现某个端口被占用后,可以用命令查看, ...

  6. apache端口被占用

      1.80端口被占用,先去服务里将IIS关闭掉,然后重启apache,如果还是继续弹窗the requested operation has failed...需要去Internet信息服务里面停止 ...

  7. 大神教你如何解决Linux系统80端口被占用

    有Linux在centos下面安装webmail服务遇到80端口被占用的问题,导致无法继续安装,下面详细介绍下Linux如何查看.查找.关闭监听80端口服务以更好的的解决80端口被占用的问题. 一.查 ...

  8. 解决Linux系统80端口被占用的问题

    有Linux在centos下面安装webmail服务遇到80端口被占用的问题,导致无法继续安装,下面详细介绍下Linux如何查看.查找.关闭监听80端口服务以更好的的解决80端口被占用的问题. 一.查 ...

  9. AIX中查找端口号和进程

    1.由端口号查找进程 维护系统或检查到不明的端口自然要去查一下这个端口是由哪个进程来监听的windows可以用命令netstat -ano来查端口对应的进程的pid. aix却并不能,aix需要使用下 ...

随机推荐

  1. KMP算法C语言实现。弄了好久才搞好。。。

    我的这个算法中数组的第一位没有像教材中那样用来存数组的大小,所以会有些许的不同.                                                             ...

  2. js面向对象-原型链

    var Person = function (name) { this.name = name; } Person.prototype.say = function () { console.log( ...

  3. Struts(五)之OGNL、contextMap

    一.OGNL 1.1.定义 OGNL是Object-Graph Navigation Language的缩写,它是一个单独的开源项目. Struts2框架使用OGNL作为默认的表达式语言.它是一种功能 ...

  4. java设计模式之职责链模式

    责任链模式 设计模式很多时候都是看见名字都知道意思,责任链,见名知义为请求创建一系列处理对象. 此模式基于请求的类型将请求的发送方和接收方分离.通常每个接收器包含对另一个接收器的引用.如果一个对象不能 ...

  5. hive metastore Server 出现异常

    报错信息: 常见问题分析: 1 hive metastore 数据库中用户名或者密码出现更改,并且重启了hive,导致生效但是CDH下没有及时更改hive metastore设置密码 2 Mysql ...

  6. Wpf之布局

    Wpf之布局 上一章大家有了自己的一个Hello World的wpf程序,今天咱们就一起走进WPF,一起来看看wpF的前台xaml这门语言的魅力. 写过web 的人都知道布局这个概念,在web中布局和 ...

  7. com.android.ide.common.process.PrecessException:org.gradle.process....finished with non-zero exit value 1

    1.问题描述: 如图,在生成apk文件时出现如下错误, 2.原因分析: 我在网上搜了很多类似的问题,但试了又试也没有解决.然后我想上次编译时都没有出错,应该是最近的操作导致的错误. 3.解决办法: 把 ...

  8. window server2012 许可证过期

    研发的服务器装得windows server 2012 Standard ,许可证只有半年使用时间,过期了老是自动关机,于是在网上找了下,最终找了个可以用的方法,记录下,留用 步骤: 1.cmd命令打 ...

  9. Python isinstance

    语法:isinstance(object,type) 作用:来判断一个对象是否是一个已知的类型. 其第一个参数(object)为对象,第二个参数(type)为类型名(int...)或类型名的一个列表( ...

  10. ios runtime部分事例方法说明

    一.场景--动态改变变量 unsigned ; Ivar *ivar = class_copyIvarList([self.person class], &count); ; i<cou ...