1 (edited by wilburunion 2017-03-27 03:11:54)

Topic: php-fpm and AH01067: Failed to read FastCGI header

I am running php-fpm.x86_64 - 5.6.30-1.el7.remi

It appears php-fpm is causing a 503 service unavailable error on certain Drupal scripts (in this case taxonomy add vocabulary) and produces => AH01067: Failed to read FastCGI header - according to the log

This seems to be common - but I have not found a common path to fix it. I am running 2.4.25 Apache from Codeit with php 5.6.30 from remi

I have another CentOS 7 server - same Apache set up - NOT running php-fpm and it works fine on the same command which fails on the php-fpm system.

Otherwise they are identical

Some people find the error is related to opcache. and the answer is to - increase opcache.max_accelerated_files from default 4000 to about 16000. I do not believe i am running opcache (Zend engine opcache in phpinfo)

The other suggestion is to increase ProxyTimeout to a large number like 600 seconds - 10 minutes

Percona says increase the max_execution_time of php in the ini to a high number and connect_timeout in the my.cnf accordingly with plenty of execution memory available

The issue is clearly php-fpm as the other identical server on the plain (and slow) Apache 2.0 handler works

Does anyone know if there is a parameter to adjust to solve this in the php-fpm *.conf pool files in /etc/php-fpm.d ??

OR - HOW this is solved on Centos 7 set up of php-fpm on php-fpm.x86_64 - 5.6.30-1.el7.remi which what I have installed ( and php70-php-fpm.x86_64 - 7.0.17-1.el7.remi - BUT I am not using that one)

*** EDIT ***

Apparently php-fpm has a 30 second hard-coded timeout - which was fixed in Apache (red hat) to honor the Proxytimeouut directive

See https://bugzilla.redhat.com/show_bug.cgi?id=1222328

Remi has addressed it here => forum.remirepo.net/viewtopic.php?id=3240 with some examples

I will give them a whirl - if someone knows the sure way - I am using unix sockets per domain

Re: php-fpm and AH01067: Failed to read FastCGI header

Indeed, this looks like a quite common issue, apache proxy timeout have to be > php max execution time.

> I do not believe i am running opcache (Zend engine opcache in phpinfo)

This usually give better perf, but, indeed, have to be tuned to match the application needs.
I recommend to use it, and also use some "panel" to check its stats, ex:

Desktop: Fedora 35 + rpmfusion + remi-test + remi-dev
Laptop:  Fedora 36 + rpmfusion + remi (SCL only)
Hosting Server: CentOS 8 Stream with EPEL, rpmfusion, remi