Apache 2.4是不可杀死的,无法在Windows Server上停止


11

我们有两个的Windows Server,一个在2012 R2和其他2008 R2,它使用Apache HTTP服务器httpd2.4中的代理服务器/反向代理模式(的使用ProxyPassProxyPassReverse和虚拟主机配置)。这两台服务器均使用来自Apache Haus的Apache 2.4.27 x64二进制版本。

我们在两个服务器上都运行着一些备份脚本。他们停止所有服务(包括Apache),然后进行备份并重新启动所有服务。

这些脚本已经运行了好几年(近4年)。但是从开始July 12, 2018,这种行为现在很奇怪。备份脚本正在执行其工作,停止所有服务,进行备份,但是现在,除了Apache之外,所有服务都将重新启动。

经过调查,我发现无法停止Apache 2.4.27服务。当使用服务控制台并尝试手动停止服务时,控制台显示“正在停止”,并且没有任何反应。

因此,我检查了正在运行的进程,发现httpd.exe进程正在运行。我试图杀死那个过程,但是没有运气。

因此,我尝试:

taskkill /im "httpd.exe" /f /t

输出为:

ERROR: The process with PID 560 (child process of PID 480) could not be terminated.
Reason: There is no running instance of the task.

因此,我测试了使用pskillSysinternals 杀死该进程:

pskill -t 560

输出为:

Copyright (C) 1999-2016  Mark Russinovich
Sysinternals - www.sysinternals.com

Process 5956 killed.

但这是错误的,因为该httpd进程始终在运行!

所以我已经将Apache从2.4.27更新到2.4.34,但是问题仍然存在。解除阻塞的唯一方法是重新引导整个服务器。

我检查了已安装的更新,其中一些是July 11, 2018在前一天安装的:

  • KB4338420
  • KB4338818
  • KB4339093
  • KB4338423

因此,我想问题出在这些更新之一。因此,在卸载所有这些文件之前,是否有人遇到与我相同的问题,我的意思是Apache 2.4变得无法杀死并且无法在Windows Server上停止?

最大的问题是,如果httpd无法终止该进程,则由于端口80已绑定,因此无法重新启动Apache。


3
标题听起来像电影中的怪物
。.– Trotski94

有人想要哈哈哈
SiZiOUS

Answers:


10

好的,我想我走对了。

在Web上搜索最近安装的更新后,KB4338818就是引起问题的一个。

这对于其他软件(例如FileZilla Server)正在发生,如此处所述

我刚刚卸载了此安全更新,现在可以正常启动/停止Apache了!

因此,我希望Microsoft在以后的更新中解决此问题!


我看到您找到了答案,但是我想知道服务器重新启动是否也可以解决问题?此外,如果在未运行Apache的情况下应用了此更新,则可能未引起该问题。
MonkeyZeus

是的,正如我在原始问题中已经解释的那样,解除这种情况的唯一解决方案是重新启动整个服务器……这是一个肮脏的解决方法!
SiZiOUS

抱歉,我错过了那个细节,它有些隐蔽。重新启动后,该过程是否仍然可以终止?我只是问,因为我在本地计算机上运行Windows 7 x64和Apache,但尚未收到KB4338818,所以我想知道会发生什么。
MonkeyZeus

1
没问题,您不必证明自己的观点。:)重新启动后,如果将Apache设置为自动启动,它将可以正常工作。但是,当您尝试停止服务(手动或使用脚本)时,该httpd过程将冻结,并且将变得不可杀灭。
SiZiOUS




0

我认为您绝对是正确的。我在Windows Server上的Tomcat遇到类似的问题。我有一台装有Tomcat的服务器,但是没有遇到问题,我能找到的唯一主要区别是,工作服务器还安装了IIS,并在其他端口上运行。作为一种变通办法,我尝试将IIS加载到问题服务器上以设置默认网站,以使其使用非标准端口,并且该问题似乎已经消失,而无需卸载更新。


1
好吧...我收回了... IIS技巧似乎只在某些时候起作用。加载IIS似乎已修复了端口80,但443仅在某些时候有效。另外,对我来说,有问题的更新似乎是KB4338815。至少对于我的生产服务器而言,这是唯一在其上运行的东西,因此我几乎可以像重新启动Tomcat一样轻松地重新启动。
Don Prezioso
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.