Edit report at https://bugs.php.net/bug.php?id=67606&edit=1
ID: 67606
Updated by: ondrej@php.net
Reported by: ondrej@php.net
Summary: FPM with mod_fastcgi/apache2.4 is broken after
db537b1f commit
Status: Assigned
Type: Bug
Package: FPM related
Operating System: Linux
PHP Version: 5.6.0RC2
Assigned To: dzuelke
Block user comment: N
Private report: N
New Comment:
David,
1) Debian has patched mod_fastcgi that works with Apache 2.4 if you need compilable source code: https://packages.qa.debian.org/liba/libapache-mod-fastcgi.html
2) I am not saying this has to be fixed in FPM, if you can come up with fix for mod_fastcgi, I think
it be sufficient.
Also "php-fcgi" is just a placeholder, it could be named "queen-of-england" and
it would work the same. It just have to match the other parts of the config file and the important
part is the "FastCgiExternalServer".
Ondrej
Previous Comments:
------------------------------------------------------------------------
[2014-07-14 08:34:14] tyrael@php.net
thanks for the heads-up!
------------------------------------------------------------------------
[2014-07-11 16:04:45] dz at heroku dot com
To explain the issue a bit, the breakage seems to stem from intentionally broken or non-existant
paths handed to mod_fastcgi so it somehow knows to pass stuff to PHP-FCGI (it's all quite
hacky, as many comments on the Interwebs point out).
In more recent versions of Debian, apparently php-fcgi is the FPM, not the CGI binary. That's
why the FPM change affects this. People are using this approach because it was documented before FPM
existed.
The code that my PR removed basically inadvertently fixed up those paths even though it was meant to
address something totally different.
Will report back with more findings.
------------------------------------------------------------------------
[2014-07-11 15:47:33] dz at heroku dot com
Yes, agreed, I'm looking into it. Building mod_fastcgi with recent Apache versions is actually
a bit of a challenge, but no worries, we'll get there. Expect an updated patch soon; I want to
get a fix into RC3.
Who is that "dzuek" assignee guy though? ;)
------------------------------------------------------------------------
[2014-07-11 15:38:04] tyrael@php.net
David: the original premise on that pull request was that the removed parts shouldn't really
affect existing installations:
"Clearly, neither applies in the case of FastCGI, so both are safe to delete."
I would be glad if we could keep the compatibility with mod_fastcgi.
------------------------------------------------------------------------
[2014-07-11 14:26:14] dz at heroku dot com
He says he can't use mod_proxy_fcgi, because the Authorization header is stripped by mod_proxy,
but this is documented behavior.
He should simply add
SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1
to his config.
With https://gist.github.com/progandy/6ed4eeea60f6277c3e39
(or Apache 2.4.10+) and 5.6.0RC2+, there are no more issues like double slashes or errors when
rewriting to PATH_INFO (see PR link below).
The "break" in question was caused by https://github.com/php/php-src/pull/694; it
fixes the issue described in https://bugs.php.net/bug.php?id=67541.
It also makes https://bugs.php.net/bug.php?id=65641 obsolete
mod_fastcgi is old, crappy, unmaintained, deprecated stuff. People should use mod_proxy_fcgi with
Apache 2.4.
I'll try and see if I can figure out a way of fixing the original issue without causing the
breakage described here (need to get mod_fastcgi working first, which isn't trivial
unfortunately).
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=67606
--
Edit this bug report at https://bugs.php.net/bug.php?id=67606&edit=1