• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion

Question ap_pass_brigade failed in handle_request_ipc function

Madness

Basic Pleskian
Hi,

Moved server recently and started seeing this error:


(32)Broken pipe: [clientxxxxxxx ] mod_fcgid: ap_pass_brigade failed in handle_request_ipc function

fcgid.conf:

<IfModule mod_fcgid.c>

<IfModule !mod_fastcgi.c>
AddHandler fcgid-script fcg fcgi fpl
</IfModule>

FcgidIPCDir /var/lib/apache2/fcgid/sock
FcgidProcessTableFile /var/lib/apache2/fcgid/shm

FcgidIdleTimeout 40
FcgidProcessLifeTime 30
FcgidMaxProcesses 1200
FcgidMaxProcessesPerClass 100
FcgidMinProcessesPerClass 0
FcgidConnectTimeout 600
FcgidIOTimeout 250
FcgidInitialEnv RAILS_ENV production
FcgidIdleScanInterval 10

</IfModule>


Do i need to change some values?
 
Please add line

FcgidMaxRequestsPerProcess 500

to fcgid.conf and restart Apache. It should help.
 
Please add line

FcgidMaxRequestsPerProcess 500

to fcgid.conf and restart Apache. It should help.

Hi IgorG,

Thank you for replying ive made the edits suggested here is my current conf:

<IfModule mod_fcgid.c>

<IfModule !mod_fastcgi.c>
AddHandler fcgid-script fcg fcgi fpl
</IfModule>

FcgidIPCDir /var/lib/apache2/fcgid/sock
FcgidProcessTableFile /var/lib/apache2/fcgid/shm

FcgidIdleTimeout 40
FcgidProcessLifeTime 30
FcgidMaxProcesses 1200
FcgidMaxProcessesPerClass 100
FcgidMinProcessesPerClass 0
FcgidConnectTimeout 600
FcgidIOTimeout 250
FcgidInitialEnv RAILS_ENV production
FcgidIdleScanInterval 10
FcgidMaxRequestsPerProcess 500

</IfModule>

Sadly the error is still logging

[Tue Nov 14 17:07:42.362174 2017] [fcgid:warn] [pid 18893:tid 140609436247808] (32)Broken pipe: [client ] mod_fcgid: ap_pass_brigade failed in handle_request_ipc function,
 
Seems i can replicate this error just by clicking the pages quickly in my forum. no error is displayed on the browser side tho, but its logged.
 
This error can occur when asynchronous requests are used by a website. These do not directly show up as an erronous result on a web page, but they trigger the execution of PHP scripts. If such scripts fail during their execution and do not return a result, this or similar strange errors are logged. What you need to do is to identify the JavaScript (AJAX) calls to your PHP scripts and find out why the execution of these scripts is failing.
 
This error can occur when asynchronous requests are used by a website. These do not directly show up as an erronous result on a web page, but they trigger the execution of PHP scripts. If such scripts fail during their execution and do not return a result, this or similar strange errors are logged. What you need to do is to identify the JavaScript (AJAX) calls to your PHP scripts and find out why the execution of these scripts is failing.
Just found this Avian’s Blog: On "ap_pass_brigade failed"

Is what hes saying true "but in the end there is nothing you can do about it on the server side. The 500 response in the log is also clearly an artifact in this case, since it's the client that caused the error, not the server, and no error page was actually delivered"
 
"clients that close the connection before waiting for the server to respond." in the article is what I was referring to in my explanation. The client is indeed closing it, but it is doing so, because it does not receive a response from the AJAX call, and that again is caused by a faulty script of the website.
 
Back
Top