Debian apache2 在一些更新后重启出现故障

Debian apache2 在一些更新后重启出现故障

有人可以给我一些建议吗?

我使用 Webmin 在 Debian 服务器上运行更新。在更新一些 apache2 等之后,它显示更新失败。

之后我无法启动 apache2。我必须运行

netstat -ltnp | grep ':80'

然后

kill -9 1047

现在我可以启动 apache2 了。

更新后第一次启动时,一些 fastCGI 网站无法运行。我必须在 ISPconfig3 中将它们更改为 mod-PHP,现在就可以运行了。

现在,如果不 kill pid,我甚至无法重新启动 apache。

在 ISP 日志中我看到了以下内容:

Unable to open logs
(98)Address already in use: make_sock: could not bind to address [::]:80   
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
 no listening sockets available, shutting down

在某些网站的日志中我看到了这一点:

[emerg] (13)Permission denied: mod_fcgid: can´t lock process table in pid 19264

您认为通过以下方式更新所有内容是解决方案吗:

apt-get update

apt-get upgrade

完成所有更新?如果我这样做,我并不担心接下来会出现错误。


如果我查看 apache 日志,我会看到以下错误:

Debian Python version mismatch, expected '2.6.5+', found '2.6.6'

但在出现这个问题之前它就已经存在了。

答案1

为了澄清一些观点,

  • 不要使用它kill -9来停止进程,除非你真的别无选择,比如它根本没有响应。这可能会导致数据丢失/损坏。相反,你可以使用脚本/etc/init.d/apache2来处理你的情况
  • apt-get update这样做apt-upgrade将为您提供来自 Debian 的可用补丁和更新,其中大部分是错误修复和安全补丁。

unable to open logs错误可能表示权限问题。请检查日志文件权限,并确保使用 启动 apache sudo

could not bind to address错误表明该端口已被其他进程保留。您可以使用 进行验证netstat -lnp

答案2

您给出的错误...

[emerg] (13)Permission denied: mod_fcgid: can´t lock process table in pid 

...在此 apache 错误中有所提及,该错误指出其是由于 mpm-itk 和 mod_fcgid 的某些版本之间不兼容造成的。

每次服务器提供 fastcgi 页面(通常是 PHP)时都会显示它。服务器在此状态下仍将提供静态内容。

https://issues.apache.org/bugzilla/show_bug.cgi?id=55350

该错误尚未修复,因此目前的解决方案是切换到 mpm-prefork 或改为使用非 fastcgi。对于 PHP,请切换到 mod-php。

在 Debian/Ubuntu 系统上,您只需运行以下命令即可切换到 mpm-prefork

apt-get remove apache2-mpm-itk

Debian 自行切换:

root@vps1:/var/lib/apache2/fcgid# apt-get remove apache2-mpm-itk
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  apache2-mpm-prefork
The following packages will be REMOVED:
  apache2-mpm-itk
The following NEW packages will be installed:
  apache2-mpm-prefork
0 upgraded, 1 newly installed, 1 to remove and 109 not upgraded.
Need to get 2,358 B of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? 
Get:1 http://ftp.debian.org/debian/ wheezy/main apache2-mpm-prefork amd64 2.2.22-13+deb7u2 [2,358 B]
Fetched 2,358 B in 0s (7,481 B/s)                
dpkg: apache2-mpm-itk: dependency problems, but removing anyway as you requested:
 libapache2-mod-php5 depends on apache2-mpm-prefork (>> 2.0.52) | apache2-mpm-itk; however:
  Package apache2-mpm-prefork is not installed.
  Package apache2-mpm-itk is to be removed.
 apache2 depends on apache2-mpm-worker (= 2.2.22-13+deb7u2) | apache2-mpm-prefork (= 2.2.22-13+deb7u2) | apache2-mpm-event (= 2.2.22-13+deb7u2) | apache2-mpm-itk (= 2.2.22-13+deb7u2); however:
  Package apache2-mpm-worker is not installed.
  Package apache2-mpm-prefork is not installed.
  Package apache2-mpm-event is not installed.
  Package apache2-mpm-itk is to be removed.

(Reading database ... 48579 files and directories currently installed.)
Removing apache2-mpm-itk ...
[ ok ] Stopping web server: apache2 ... waiting .
Selecting previously unselected package apache2-mpm-prefork.
(Reading database ... 48583 files and directories currently installed.)
Unpacking apache2-mpm-prefork (from .../apache2-mpm-prefork_2.2.22-13+deb7u2_amd64.deb) ...
Setting up apache2-mpm-prefork (2.2.22-13+deb7u2) ...
[ ok ] Starting web server: apache2.

相关内容