Zusammenfassung: Apache 2.4 mod_proxy scheint die Autorisierungsheader nicht an PHP-FPM zu übergeben. Gibt es eine Möglichkeit, das zu beheben?Apache 2.4 + PHP-FPM und Authorization Header
Lange Version: Ich betreibe einen Server mit Apache 2.4 und PHP-FPM. Ich verwende APC für Opcode-Caching und Benutzer-Caching. Wie durch das Internet empfohlen, verwende ich Apache 2.4 des mod_proxy_fcgi die Anforderungen an FPM zu Proxy, wie folgt aus:
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/foo/bar/$1
Das Setup funktioniert gut, bis auf eine Sache: gebündelt apc.php von APC verwendet die zur Überwachung Der Status von APC erlaubt mir nicht, mich einzuloggen (erforderlich, um Benutzer-Cache-Einträge zu betrachten). Wenn ich auf "User cache entries" klicke, um den User-Cache zu sehen, werde ich aufgefordert, mich einzuloggen. Wenn ich auf die Login-Schaltfläche klicke, wird das übliche HTTP-Login-Formular angezeigt, aber die Eingabe des korrekten Logins und Passworts führt nicht zum Erfolg. Diese Funktion funktioniert perfekt, wenn Sie mit mod_php anstelle von mod_proxy + php-fpm arbeiten.
Nach einigem googeln stellte ich fest, dass andere Leute das gleiche Problem hatten und herausfanden, dass es daran lag, dass Apache die Autorisierungs-HTTP-Header nicht an den externen FastCgi-Prozess weitergab. Leider fand ich nur ein Update für mod_fastcgi, die so aussah:
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization
Gibt es eine entsprechende Einstellung oder eine Abhilfe, die auch mit mod_proxy_fcgi funktionieren würde?
Danke für das "-pass-header Authorization" -Snippet! Hat mir mit fastcgi geholfen. – Sergio