Edit report at https://bugs.php.net/bug.php?id=53041&edit=1
ID: 53041 Comment by: kev at dewsolutions dot co dot uk Reported by: sunseb at live dot com Summary: is_file() and open_basedir Status: Verified Type: Bug Package: *Directory/Filesystem functions Operating System: Linux PHP Version: 5.3.3 Block user comment: N Private report: N New Comment: Still occurs in PHP 5.3.6. to replicate: <?php error_reporting(E_ALL); ini_set('display_errors', 1); echo 'testing open basedir problems <br />'; // append text to current directory name which should be the dir of open_basedir to trigger open_basedir warning echo 'checking ' . dirname(__FILE__) . 'test <br />'; var_dump(file_exists(dirname(__FILE__) . 'test')); // no warning should occur here whether index.php exists or not echo 'checking ' . dirname(__FILE__) . '/index.php <br />'; var_dump(file_exists(dirname(__FILE__) . '/index.php')); // if index.php exists a open_basedir warning will be thrown echo 'checking ' . dirname(__FILE__) . '/index.php/test <br />'; var_dump(file_exists(dirname(__FILE__) . '/index.php/test')); Previous Comments: ------------------------------------------------------------------------ [2011-02-26 22:32:43] info at riastudio dot fr Still occurs in 5.3.5, more than annoying when you have a lot of vhosts with open_basedir + error_reporting E_ALL ------------------------------------------------------------------------ [2011-02-02 17:26:18] mjk at emmjaykay dot org My apologies. But it says "directory: /home/my_file.txt" so I the directions were a little unclear. sry ------------------------------------------------------------------------ [2011-02-02 12:39:14] sjon at react dot com apart from you not reproducing the bug correctly (my_file.txt should obviously be a file, not a directory), this seems to have been fixed by now. I suspect this to fix it: http://svn.php.net/viewvc/php/php-src/branches/PHP_5_3/TSRM/tsrm_virtual_cwd.c?r1=264931&r2=264932& ------------------------------------------------------------------------ [2011-02-01 19:06:53] mjk at emmjaykay dot org I setup my machine as described in this bug and changed my /etc/php.ini so that open_basedir = /home/, mkdir /home/my_file.txt and did a touch /home/my_file.txt/whatever. I then ran this script <?php var_dump (is_file("/home/my_file.txt")); var_dump (is_file("/home/my_file.txt/whatever")); ?> and got this bool(false) bool(true) Is there another change I need to make to php.ini or something I'm missing? ------------------------------------------------------------------------ [2011-01-07 14:08:04] sjon at react dot com this problem still occurs in 5.3.5 ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=53041 -- Edit this bug report at https://bugs.php.net/bug.php?id=53041&edit=1