mod_fcgid error


#1

Hi,

I have centos 6.3 on 16GB/4 vCores Virtual Server (hosteurope.de). I’m having currently 3 domains (2 wordpress, 1 drupal). The last few days I receive a lot internal server errors especially on high traffic and I’ve been trying to find out the root of the problem. The main error I receive is in /var/log/httpd/error_log:

[some_date] [warn] mod_fcgid: process 13442 graceful kill fail, sending SIGKILL
[a_date] [error] FastCGI process 32657 still did not exit, terminating forcefully
[a_date] [warn] mod_fcgid: cleanup zombie process 18283
[a_date] [warn] (105)No buffer space available: connect to listener on 0.0.0.0:80

In the logs of each website I have also:
domain1 (wordpress), /var/www/vhosts/domain1/logs

[a_date] [warn] [client an_ip] mod_fcgid: read data timeout in 70 seconds, referer: myrurl
[a_date] [warn] [client an_ip] mod_fcgid: stderr: 				ORDER BY dp_date DESC, cntaccess DESC
[a_date] [warn] [client an_ip] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server
[a_date] [error] [client an_ip] Premature end of script headers: wp-cron.php
[a_date] [warn] [client an_ip] (70007)The timeout specified has expired: mod_fcgid: can't get data from http client, referer: a_url

domain2 (wordpress), /var/www/vhosts/domain2/logs

[a_date] [error] [client an_ip] Premature end of script headers: wp-comments-post.php, referer: a_url
[a_date] [error] [client an_ip] Premature end of script headers: index.php, referer: a_url
[a_date] [warn] [client an_ip] mod_fcgid: read data timeout in 70 seconds
[a_date] [error] [client an_ip] Premature end of script headers: index.php

domain3 (drupal) /var/www/vhosts/domain3/logs

[a_date] [warn] [client an_ip] mod_fcgid: stderr: PHP Warning:  Maximum number of allowable file uploads has been exceeded in Unknown on line 0, referer: a_url
[a_date] [warn] [client an_ip] mod_fcgid: read data timeout in 70 seconds, referer: a_url
[a_date] [error] [client an_ip] Premature end of script headers: index.php, referer: a_url

I was checking around at the beginning how I could handle with the error of the mod_fcgid and I found some answers like increasing some parameters in /var/etc/httpd/fcgid.conf, i.e.

 FcgidIdleTimeout 40->3600
FcgidProcessLifeTime 30->7200
FcgidMaxProcesses 40->64
FcgidMaxProcessesPerClass 8
FcgidMinProcessesPerClass 0
FcgidConnectTimeout 30->300
FcgidIOTimeout 70->7200
FcgidInitialEnv RAILS_ENV production
FcgidIdleScanInterval 10
IPCCommTimeout  7200
IPCConnectTimeout 180

This has improved just the occurrence of the errors of mod_fcgi but especially on high load there is a lot of latency especially when somebody submits a comment or edit a page.

As a consequence I tried to check whether there is any problem on the performance of the server or something wrong in the website. I tried to check the CPU usage for each website and I found out through top -c that there is high usage (30-100%) on php-cgi processes, especially on the websites that are related to wordpress, i.e.

/usr/bin/php-cgi -c /var/www/vhosts/system/domain1/etc/php.ini
/usr/bin/php-cgi -c /var/www/vhosts/system/domain2/etc/php.ini

It seems that there is something wrong with some php script. However I don’t know how I could restrict even further the issue. Any ideas?

Thanks in advance


#2

Hi,

have you tried to increase a value of “FcgidOutputBufferSize Directive”.
http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#fcgidoutputbuffersize

lubos


#3

#4