Bug #67998 [Com]: Wrong SCRIPT_FILENAME

From: Date: Thu, 11 Sep 2014 05:33:26 +0000
Subject: Bug #67998 [Com]: Wrong SCRIPT_FILENAME
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-187515@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=67998&edit=1 ID: 67998 Comment by: dz at heroku dot com Reported by: php-fpm1 at gmail dot com Summary: Wrong SCRIPT_FILENAME Status: Open Type: Bug Package: FPM related Operating System: CentOS6 PHP Version: 5.4.32 Block user comment: N Private report: N New Comment: The docs are wrong. Don't add a trailing slash. The request URI is appended to whatever you provide in SetHandler. The use of UDS may also further confuse things as PHP doesn't handle that. Previous Comments: ------------------------------------------------------------------------ [2014-09-10 15:50:21] phpfpm1 at gmail dot com BTW, PHP-FPM is setup using unix domain sockets in Apache. AddHandler "proxy:unix:/usr/local/php54/sockets/admin.sock|fcgi://localhost/" .inc .php .phtml .php54 More info: http://httpd.apache.org/docs/current/mod/mod_proxy.html#handler I've found that the following fixes the problem (removing "/" from the end of "localhost"): AddHandler "proxy:unix:/usr/local/php54/sockets/admin.sock|fcgi://localhost" .inc .php .phtml .php54 But official Apache documentation states that "/" ending should be there. ------------------------------------------------------------------------ [2014-09-10 14:22:38] phpfpm1 at gmail dot com I forgot to mention that the bug affects PHP 5.4.33RC1 too, so https://bugs.php.net/bug.php?id=67541 doesn't fix it. ------------------------------------------------------------------------ [2014-09-10 14:15:39] php-fpm1 at gmail dot com Description: ------------ Wrong SCIPRT_FILENAME is given. It contains '/' twice at the start of it (//). ["SCRIPT_FILENAME"]=> string(57) "//home/admin/domains/testing.domain.tld/public_html/test.php" Other variables are okay: ["CONTEXT_DOCUMENT_ROOT"]=> string(47) "/home/admin/domains/testing.domain.tld/public_html" ["DOCUMENT_ROOT"]=> string(47) "/home/admin/domains/testing.domain.tld/public_html" ["REQUEST_URI"]=> string(9) "/test.php" ["SCRIPT_NAME"]=> string(9) "/test.php" ["PHP_SELF"]=> string(9) "/test.php" ["HOME"]=> string(11) "/home/admin" It also breaks SG(request_info).path_translated in extensions. Test script: --------------- <?php echo $_SERVER; ?> Expected result: ---------------- ["SCRIPT_FILENAME"]=> string(57) "/home/admin/domains/testing.domain.tld/public_html/test.php" Actual result: -------------- ["SCRIPT_FILENAME"]=> string(57) "//home/admin/domains/testing.domain.tld/public_html/test.php" ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=67998&edit=1

« previous php.bugs (#187515) next »