I am having troubles with the following combination:
Apache 2.2.6 + mod_fcgid 2.2 + php-fcgi 5.2.4 + eAccelerator(latest)

I got Internal server error time to time, some examples taken from
error_log:

[Sat Oct 20 08:26:12 2007] [warn] (104)Connection reset by peer: mod_fcgid: 
read data from fastcgi server error.
[Sat Oct 20 08:26:12 2007] [error] [client xxx] Premature end of
script headers: foobar1.php, referer: http://foobar/foobar1.php

[Sat Oct 20 09:19:25 2007] [warn] mod_fcgid: read data timeout in 80 seconds
[Sat Oct 20 09:19:25 2007] [error] [client xxx] Premature
end of script headers: foobar2.php, referer: http://foobar/foobar2.php


[Sat Oct 20 14:37:23 2007] [warn] mod_fcgid: read data timeout in 80 seconds
[Sat Oct 20 14:37:23 2007] [error] [client xxx] Premature end
of script headers: galeria.php, referer: http://www.foobar.hu
[Sat Oct 20 14:37:30 2007] [notice] mod_fcgid: process
/web/web/host/foobar.hu/pages/foobar3.php(1103) exit(communication
error), terminated by calling exit(), return code: 0 


FCGI configuration:
LoadModule fcgid_module modules/mod_fcgid.so
AddHandler fcgid-script .php
IPCCommTimeout 80
PHP_Fix_Pathinfo_Enable 1
MaxRequestsPerProcess 500
FCGIWrapper "/usr/local/php5/bin/php.sh" .php

Where the shell script is:
#!/bin/sh

PHP_FCGI_MAX_REQUESTS=2000
export PHP_FCGI_MAX_REQUESTS
exec /usr/local/php5/bin/php-cgi -c /usr/local/apachehoste/conf/php5.ini


I was really out of ideas and then it just came up, that i read in
lighttpd's documentation, that if you were using opcode cacher you
have to limit number of fcgi processes to 1 and increase php's
internal process manager to a higher value by setting
PHP_FCGI_CHILDREN environment variable. So i set PHP_FCGI_CHILDREN to
10 in the shell script and MaxProcessCount to 1 in httpd.conf.

Configuration seems to be stable and no internal server errors
anymore (so far anyway).

And now my question is:

mod_fcgid reports the following events, which is normal:
[Sat Oct 20 14:49:10 2007] [notice] mod_fcgid: 
/web/web/host/foobar.hu/pages/foobar4.php total process count 1 >= 1, skip the 
spawn request

I am not familiar with the fastcgi protocol at all, so I am wondering
whether in this case mod_fcgid forwards the requests to the php
process manager or is waiting for processing of prev requests to be
finished?...

Of course another hints about the configuration are welcome.

Best regards,
Erno Kovacs



-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Mod-fcgid-users mailing list
Mod-fcgid-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mod-fcgid-users

Reply via email to