https://issues.apache.org/bugzilla/show_bug.cgi?id=51517
--- Comment #9 from Stefan Rubner <[email protected]> --- Jérôme, Right now it's the other way round. PATH_INFO is correct while SCRIPT_NAME isn't 100% correct. An example: If I call http://127.0.0.1/this/is/my/test.php/more/path/info?var=1234 the (shortened) output of the perl script you used will be: === Proxy Balancer === $VAR1 = { 'SCRIPT_NAME' => '/this/is/my/test.php/more/path/info', 'PATH_INFO' => '/more/path/info?var=1234', 'SCRIPT_FILENAME' => 'proxy:balancer://php5fpm/var/www/html/this/is/my/test.php/more/path/info?var=1234', 'SERVER_SOFTWARE' => 'Apache/2.4.10 (Debian)', 'QUERY_STRING' => 'var=1234', 'BALANCER_WORKER_NAME' => 'fcgi://127.0.0.1:9000/', 'DOCUMENT_ROOT' => '/var/www/html', 'PATH_TRANSLATED' => '/var/www/html/more/path/info?var=1234', 'REQUEST_URI' => '/this/is/my/test.php/more/path/info?var=1234', }; === Proxy FCGI === $VAR1 = { 'SCRIPT_NAME' => '/this/is/my/test.php/more/path/info', 'PATH_INFO' => '/more/path/info?var=1234', 'SCRIPT_FILENAME' => 'proxy:fcgi://127.0.0.1:9000/this/is/my/test.php/more/path/info', 'SERVER_SOFTWARE' => 'Apache/2.4.10 (Debian)', 'QUERY_STRING' => 'var=1234', 'DOCUMENT_ROOT' => '/var/www/html', 'PATH_TRANSLATED' => '/var/www/html/more/path/info?var=1234', 'REQUEST_URI' => '/this/is/my/test.php/more/path/info?var=1234', }; The main question is whether PHP-FPM could "live" with that state of the SCRIPT_NAME env var and whether the others would be fine. I guess I could fix SCRIPT_NAME as well if need be. As for the prefixing of SCRIPT_FILENAME with "proxy:(fcgi|balancer):": Looking at the Apache code I think I see why they're doing it and I think they do it wrong for the wrong reasons: It looks like Apache is trying to determine whether an incoming request actually is a proxy request using these prefixes and if it isn't while Apache is in the "mod_proxy_*" execution path, a request will be declined. Personally I disagree with this behavior because imo any request that comes in should be served as long it is a valid HTTP 1.0/1.1 request. But since I think it will be hard to convince the Apache project of that view and since there's already a fix for the the "proxy:fcgi:" route in PHP-FPM I guess it would be easier to also fix the "proxy:balancer:" stuff on PHP's side. -Stefan -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
