On 01/18/2017 06:43 AM, Jim Jagielski wrote:
Also, the fact that different methods of invoking FCGI result
in different vars, at 1st blush, doesn't seem "incorrect"
assuming that each difference makes some sense, in a way.
They don't make sense. For example, mod_proxy_fcgi can be set up in a
way that mirrors the mod_fastcgi preferred configuration, using an Action:
AddType application/x-php7-fpm .php
Action application/x-php7-fpm /php7-fpm virtual
<Location /php7-fpm>
SetHandler proxy:fcgi://localhost:9000
</Location>
This results in the following variables when I access the URL
'/hello.php/path/info?query':
SCRIPT_FILENAME: /var/www/php7-fpm
SCRIPT_NAME: /php7-fpm
PATH_INFO: /hello.php/path/info
PATH_TRANSLATED: /var/www/hello.php/path/info
QUERY_STRING: query
We only get QUERY_STRING right. (Well, I won't say SCRIPT_FILENAME is
"wrong", since there is no standard definition, but it's not helpful.)
SCRIPT_NAME is supposed to point to a possible script-path (see RFC 3875
for definitions), '/hello.php' in this instance. PATH_INFO and
PATH_TRANSLATED should not include 'hello.php' in their values.
It's not just Action. PR 51517 contains examples using ProxyPassMatch.
--Jacob