Apache: Lösung für "mod_fcgid: can't apply process slot"

Es kommt (wenn auch selten) vor, dass sich der Apache2 Webserver aufhängt. Problematisch wird es aber erst, wenn die PHP Scripte auf dem Server per FCGI verarbeitet werden. Aus bisher noch nicht erkannten Gründen werden dabei entweder nur (leichter Schaden) die Rechte der "suexec" oder "suexec2" verändert - in schweren Fällen werden scheinbar die Programme beschädigt. Fehlermeldungen (Beispiele): Log des virtuellen Hosts (Apache2):

[warn] mod_fcgid: can't apply process slot for /etc/srv/test/htdocs/index.php
[error] [client x.x.x.x] File does not exist: /etc/srv/test/errors/503.html
Andere Fehlermeldung im Apache Haupt-Log:
[debug] arch/unix/fcgid_proc_unix.c(731): Connection refused: 
mod_fcgid: can't connect unix domain socket: /var/lib/apache2/fcgid/sock/4222.1
Lösung: Zuerst prüfen, ob ein "leichter Schaden" vorliegt:
cd /usr/sbin
dir suexec*
Erhalten Sie diese Ansicht, -rwxr-xr-x 1 root root 14036 Oct 21 01:39 suexec2 müssen Sie die folgenden Befehle (als root) ausführen:
chgrp www suexec2
chmod 4750 suexec2
Danach wird die Ansicht so aussehen: -rwsr-x--- 1 root www 14036 Oct 21 01:39 suexec2 Nun den Apache2 neu starten:
rcapache2 restart
Sollte sich das Problem nicht gelöst haben, per Yast2 die folgenden Module updaten lassen:
  • apache2
  • apache2-mod_fcgid
  • apache2-prefork
  • apache2-worker
Danach wieder die Rechte der suexec setzen (s.o.).