ap_pass_brigade failed in handle_request_ipc function

Nick Martin picture Nick Martin · Mar 20, 2013 · Viewed 20.6k times · Source

A page is resulting in a 500 error and the log shows this:

[Wed Mar 20 11:19:23 2013] [warn] [client 127.0.0.1] (104)Connection reset by peer: mod_fcgid: ap_pass_brigade failed in handle_request_ipc function

It is occuring on a lemonstand website, when you try to view 90 products on a category page. The step from 60 per page to 90 appears to be too many, and it results in a 500 error.

The page loads for no more than around 4 seconds before the error, and there are many other websites running on the server which do not experience this issue.

I have so far assumed that this is due to environment settings, and not caused by Lemonstand. I have googled the heck out of this and tried various config settings to get it to behave, none have so far fixed it. Below is the current fcgid config, I have commented out some of the variables I tried changing.

Fcgid.conf:

<IfModule mod_fcgid.c>
AddHandler php-fcgi .php
Action php-fcgi /fcgi-bin/php-fcgi-wrapper
AddType application/x-httpd-php .php
Alias /fcgi-bin/ /var/apache/fcgi-bin/

FcgidConnectTimeout 180
FcgidIOTimeout 600
FcgidBusyTimeout 3600
FcgidMaxRequestLen 226777216
FcgidFixPathinfo 1
#FcgidOutputBufferSize 65536
#FcgidProcessLifeTime 30
#FcgidMaxRequestsPerProcess 500
FcgidIdleTimeout 60
#FcgidIdleScanInterval 1
#FcgidBusyTimeout 60
#FcgidBusyScanInterval 1
#FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 100000

<Location /fcgi-bin/>
SetHandler fcgid-script
Options +ExecCGI
Order allow,deny
Allow from all
</Location>
</IfModule>

Answer

Pixel picture Pixel · Dec 31, 2014

This is a PHP-FCGI limit error you're receiving. You'll need to adjust either the "PHP_FCGI_MAX_REQUESTS" variable inside the "fcgi-bin/php5.fcgi" file for the domain or "FcgidMaxRequestsPerProcess" variable inside the Apache config file.

http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#examples