PHP-FPM incorrectly defines the SCRIPT_NAME variable when using Apache
| Bug #65641 | PHP-FPM incorrectly defines the SCRIPT_NAME variable when using Apache | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Submitted: | 2013-09-09 09:12 UTC | Modified: | 2014-07-25 13:55 UTC |
|
||||||||||
| From: | ryotakatsuki at gmail dot com | Assigned: | ||||||||||||
| Status: | Closed | Package: | FPM related | |||||||||||
| PHP Version: | 5.5.3 | OS: | ||||||||||||
| Private report: | No | CVE-ID: | None | |||||||||||
[2013-09-09 09:12 UTC] ryotakatsuki at gmail dot com
Description: ------------ When using Apache + PHP_FPM, the SCRIPT_NAME variable is incorrectly set. For example, accessing "http://127.0.0.1/sample/test.php/a/b/c", results in: ORIG_SCRIPT_NAME: SCRIPT_NAME: /sample/test.php/a/b/c ORIG_SCRIPT_FILENAME: //tmp/sample/test.php/a/b/c SCRIPT_FILENAME: //tmp/sample/test.php PATH_INFO: /a/b/c ORIG_PATH_INFO: While when using mod_php, the values are: SCRIPT_NAME: /sample/test.php SCRIPT_FILENAME: /tmp/sample/test.php PATH_INFO: /a/b/c It is also working fine when using NGINX Test script: --------------- A sameple script to reproduce the issue: <?php echo("ORIG_SCRIPT_NAME: " . $_SERVER['ORIG_SCRIPT_NAME']); echo('<br/>'); echo("SCRIPT_NAME: " . $_SERVER['SCRIPT_NAME']); echo('<br/>'); echo("ORIG_SCRIPT_FILENAME: " . $_SERVER['ORIG_SCRIPT_FILENAME']); echo('<br/>'); echo("SCRIPT_FILENAME: " . $_SERVER['SCRIPT_FILENAME']); echo('<br/>'); echo("PATH_INFO: " . $_SERVER['PATH_INFO']); echo('<br/>'); echo("ORIG_PATH_INFO: " . $_SERVER['ORIG_PATH_INFO']); echo('<br/>'); ?> And a very simple apache conf: Alias /sample /tmp/sample ProxyPassMatch .*/sample/(test.php.*) fcgi://127.0.0.1:9000//tmp/sample/$1 <Directory /tmp/sample/ > Require all granted </Directory> Expected result: ---------------- ORIG_SCRIPT_NAME: SCRIPT_NAME: /sample/test.php ORIG_SCRIPT_FILENAME: //tmp/sample/test.php/a/b/c SCRIPT_FILENAME: //tmp/sample/test.php PATH_INFO: /a/b/c ORIG_PATH_INFO:
Patches
Another_fix_for_mod_proxy_fcgi_v2.patch (last revision 2014-09-15 09:13 UTC by remi@php.net)Another_fix_for_mod_proxy_fcgi.patch (last revision 2014-09-05 13:14 UTC by remi@php.net)
fpm_main-script_name-v2.patch (last revision 2014-04-29 14:22 UTC by rainer dot jung at kippdata dot de)
fpm_main-script_name.patch (last revision 2014-04-29 14:12 UTC by rainer dot jung at kippdata dot de)
fix_script_name_in_fpm_with_apace_fixed (last revision 2014-03-16 17:03 UTC by ryotakatsuki at gmail dot com)
fix_script_name_in_fpm_with_apache (last revision 2013-09-09 09:13 UTC by ryotakatsuki at gmail dot com)
Pull Requests
History
AllCommentsChangesGit/SVN commits
[2013-09-17 21:50 UTC] felipe@php.net
-Status: Open +Status: Assigned -Assigned To: +Assigned To: fat
[2014-03-14 16:20 UTC] hp4everything at googlemail dot com
[2014-03-16 17:06 UTC] ryotakatsuki at gmail dot com
[2014-03-17 13:55 UTC] hp4everything at googlemail dot com
[2014-04-29 14:23 UTC] rainer dot jung at kippdata dot de
[2014-04-29 18:03 UTC] php at cizero dot de
[2014-05-31 11:16 UTC] dz at heroku dot com
[2014-06-29 23:04 UTC] tyrael@php.net
-Status: Assigned +Status: Closed -Assigned To: fat +Assigned To: tyrael
[2014-06-29 23:04 UTC] tyrael@php.net
[2014-06-30 00:21 UTC] tyrael@php.net
-Status: Closed +Status: Re-Opened
[2014-07-25 13:55 UTC] tyrael@php.net
-Assigned To: tyrael +Assigned To:
[2014-09-15 11:32 UTC] remi@php.net
-Status: Re-Opened +Status: Closed