• Our team is looking to connect with folks who use email services provided by Plesk, or a premium service. If you'd like to be part of the discovery process and share your experiences, we invite you to complete this short screening survey. If your responses match the persona we are looking for, you'll receive a link to schedule a call at your convenience. We look forward to hearing from you!
  • We are looking for U.S.-based freelancer or agency working with SEO or WordPress for a quick 30-min interviews to gather feedback on XOVI, a successful German SEO tool we’re looking to launch in the U.S.
    If you qualify and participate, you’ll receive a $30 Amazon gift card as a thank-you. Please apply here. Thanks for helping shape a better SEO product for agencies!
  • The BIND DNS server has already been deprecated and removed from Plesk for Windows.
    If a Plesk for Windows server is still using BIND, the upgrade to Plesk Obsidian 18.0.70 will be unavailable until the administrator switches the DNS server to Microsoft DNS. We strongly recommend transitioning to Microsoft DNS within the next 6 weeks, before the Plesk 18.0.70 release.
  • The Horde component is removed from Plesk Installer. We recommend switching to another webmail software supported in Plesk.

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