昨天刚更新了Windows10,总体上来说效果还是蛮不错的,然而今天在开启Apache服务器的时候却发现,Apache莫名其妙的打不开了,起初以为是权限的问题,于是使用管理员身份的控制台去调用命令net start Apache2.4,结果依然是无法打开。手动启动服务报错“Windows不能再本地计算机启动Apache,有关更多信息,查阅系统时间日志。如果这是非Microsoft服务,请与服务厂商联系,并参考特定服务错误代码1。”如下图所示:

Windows不能再本地计算机启动Apache,有关更多信息,查阅系统时间日志。如果这是非Microsoft服务,请与服务厂商联系,并参考特定服务错误代码1。

看到这种情况,我有手动cd到Apache的httpd.exe的目录,执行了一下httpd,这下原因找到了,如下图所示:

(OS 10013)以一种访问权限不允许的方式做了一个访问套接字的尝试。 : AH00072: make_sock: could not bind to address 127.0.0.1:80
AH00451: no listening sockets available, shutting down
AH00015: Unable to open logs

从图中可以看到错误的原因是套接字绑定错误,这下可以确定是Apache的80端口被占用了。于是就使用命令 netstat -ano 来查看一下到底是哪个程序占用了80端口,如图所示端口查找的结果:

看到80端口被PID为4的System进程占用,呵呵,我想说一句我擦嘞什么鬼+_+。仔细想了想,一般的程序不会占用80,遂使用命令  netsh http show servicestate 查看一下当前的http服务状态,发现果然有问题,如下图所示:

图中可以看到,80端口被一个DefaultAppPool的东西占用了,如果用过IIS的童鞋,这时候肯定一定想到了原因,这里我们依然要接着往下找原因,图中可以看出控制器进程ID为4640,那么就 就继续查看一下4640进程是什么鬼,进入任务管理器,找到PID4640的进程,右键转到服务,可以看到当前的进程所在的服务,如图所示:


看到图中的服务,这里原因也就找到了,IIS的World Wid Web Publishing Service 万维网服务的问题。

解决方案:

控制面板–>程序–>启用或者关闭Windows功能–>找到Internet Information Service,将其关闭即可

转载请注明:悠然品鉴 » Windows10下80端口被PID为4的System占用导致Apache无法启动的分析与解决方案

【转】Windows10下80端口被PID为4的System占用导致Apache无法启动的分析与解决方案的更多相关文章

  1. 解决Windows10下80端口被PID为4的System占用的问题

    一.背景 最近由于好奇心,更新了windows10系统,感觉上手还蛮快,而且体验还不错,但是在IDEA中做开发时,使用80端口进行启动项目的时候发现端口被占用了,于是尝试解决这个问题.具体步骤如下,分 ...

  2. Win10下80端口被System占用导致Apache无法启动

    Windows10下80端口被PID为4的System占用导致Apache无法启动的分析与解决方案 方法/步骤     最近更新了Windows10,总体上来说效果还是蛮不错的,然而今天在开启Apac ...

  3. Windows下80端口被pid为4的System进程占用解决方法

    前言 之前是Windows 7系统,前段时间装了Windows 10,php环境还没来得及搭建.今天折腾了一下,是用nginx+php,端口是80(已经停止了iis服务),nginx就是起不来,十之八 ...

  4. Win7下nginx默认80端口被System占用,造成nginx启动报错的解决方案

    Win7下nginx默认80端口被System占用,造成nginx启动报错的解决方案   在win7 32位旗舰版下,启动1.0.8版本nginx,显示如下错误:  [plain] 2012/04/0 ...

  5. 80端口被System占用 造成Apache不能启动的解方案

    运行netstat -aon | findstr :80 ,发现pid是4的进程占用着80端口,这还是一个系统进程,kill不掉.所以只能另想办法: 1.打开注册表:regedit 2.找到:HKEY ...

  6. win7下80端口被(Pid=4)占用的解决方法

    首先介绍一种网上普遍的方法,就是查找占据80端口的进程,然后关闭它就行了. 1.运行cmd,然后输入netstat -a -n -o,回车:2.查看开头几行包含0.0.0.0:80的那一行最后的pid ...

  7. 【80端口占用】win7下80端口被(Pid=4)占用的解决方法

    亲测可用 通过cmd命令查询占用进程的pid netstat -ano 如果要是tomcat等一般程序占用了端口,一般pid比较大,直接找到相应的pid结束掉进程就行啦. 但是如果pid是4,代表sy ...

  8. nginx默认80端口被System占用,造成nginx启动报错的解决方案

    今天启动window上的nginx总是报错 错误信息是bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socke ...

  9. Windows Server 2012 中80端口被PID为4的系统进程占用解决方法

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP 把"start" 的值改成4.

随机推荐

  1. 理解shared_ptr<T> ---2

    1.引用计数字段不能放在资源管理类中.我们的解决办法是,把引用计数和资源绑在一起,进行二次封装.但是这样存在一个大问题,不同类型的资源管理类不能兼容.也就是说,shared_ptr<Dog> ...

  2. 金蝶K3 破解版

  3. BZOJ 1028: [JSOI2007]麻将 暴力

    1028: [JSOI2007]麻将 Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/prob ...

  4. nginx学习七 高级数据结构之动态数组ngx_array_t

    1 ngx_array_t结构 ngx_array_t是nginx内部使用的数组结构.nginx的数组结构在存储上与大家认知的C语言内置的数组有相似性.比方实际上存储数据的区域也是一大块连续的内存. ...

  5. 文件和目录之utime函数

    一个文件的访问和修改时间可以用utime函数更改. #include <utime.h> int utime( const char *pathname, const struct uti ...

  6. android的项目文件介绍

    1.res目录存放Android的各种资源文件,比如layout存放布局文件main.xml,values存放各种xml格式的资源文件,字符串资源strings.xml,颜色资源文件:colors.x ...

  7. js 三元运算符以及|| 和 && 测试

    var  a = '0';var  b = a ? 'me':'hi'; console.log(b);//false 有: undefined , 0, '', false,null//true  ...

  8. 认识CoreData-多线程

    CoreData使用相关的技术点已经讲差不多了,我所掌握的也就这么多了.... 在本篇文章中主要讲CoreData的多线程,其中会包括并发队列类型.线程安全等技术点.我对多线程的理解可能不是太透彻,文 ...

  9. truncate和 delete的区别:

    1.一个表要删除全部数据如何实现:①delete,②truncate EG:删除a表中的所有数据: CREATE TABLE `b` ( `id` int(11) NOT NULL AUTO_INCR ...

  10. oracle学习总结1

    1:解锁用户alter user 用户名 account unlock; 2:获取系统时间.随机数select sysdate, sys_guid() from dual; 3:起别名,使可读性更强, ...