Re: open_basedir restriction and local value for php.ini

From: Date: Wed, 22 Sep 2004 10:21:42 +0000
Subject: Re: open_basedir restriction and local value for php.ini
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-197542@lists.php.net to get a copy of this message
Is the situation this: /home/a.php includes page /home/lib/b.php which includes /home/lib/c.php? If I recall correctly, when you include a file in an included file, the script is run in the directory where a.php is located. So you need to include files based on that directory. I recommend you to set in a.php variable $RootDir to '/home/' and to do all including based on that. a.php: require($RootDir . 'lib/b.php'); b.php: require($RootDir . 'lib/c.php'); This assumes you never use b.php without including it from a.php. To avoid this assuming I use settings file in projects that has to be portable and include that file to every single page of the project. Niklas Bogdan Ribic wrote:
Hello all, I am having problems with cleint's webserver and its open_basedir settings. open_basedir is set to folder where all my php files are, but when I include a file that already includes another one (all under allowed directory tree) it throws out warnings: Warning: open_basedir restriction in effect. File is in wrong directory in /home/www/web14/html/lib/cmember.php on line 3 line 3 of cmember,php has: require_once "lib.php" both cmember and php are in lib directory. phpinfo() says that local settings for open_basedir is /home/www/web14 and master settings is empty. It is an older php version, 4.2.2, on SuSe Linux. So... is there anything I can do other than turning off local setting for open_basdir. And if there isn't, where do I turn off these settings, ie where do you set lolal php.ini values for particular sites? Thanx in advance. Boban.


« previous php.general (#197542) next »