ID: 11940
User Update by: [EMAIL PROTECTED]
Old-Status: Closed
Status: Open
Old-Bug Type: *General Issues
Bug Type: Documentation problem
Operating system: Solaris 8/sparc
PHP Version: 4.0.6
Description: ill side effect of open_basedir
Jason, thanks for the clarification. I apologize for persistence, but I'm re-opening
the bug under the different category. There are two issues here now:
1. The documentation does not describe this configuration
option clearly. It only talks about (quote)
When a script tries to open a file It should
mention that the restriction applies to the script
itself. The first sentence may imply this, but only
very vaguely.
http://www.php.net/manual/en/configuration.php
2. The error message logged by PHP is not helpful.
It talks about opening file for inclusion, which actually
is probably what let into confusion even you when you
replied to this bug in the first place. Also, the
words Unknown in both sentences of the error message
are not very helpful, too.
Thanks again,
--
Arcady Genkin
Previous Comments:
---
[2001-07-06 23:26:52] [EMAIL PROTECTED]
Sorry, I wrote that in a hurry.
ANY file open operation performed by php has to be in open_basedir. ( Including your
main script. )
This is actually by design.
-Jason
---
[2001-07-06 18:25:15] [EMAIL PROTECTED]
I may be missing something, but there is no include() or any other file-related
operation in the sample script that I posted. All it has is 'echo hello'.
---
[2001-07-06 17:43:40] [EMAIL PROTECTED]
This is not a bug, include calls a file open operation,
and as such must be in the open_basedir path
-Jason
---
[2001-07-06 17:36:45] [EMAIL PROTECTED]
safe_mode = On
doc_root = /homes/u0/apache
open_basedir = /var/www/htdocs/workathome:/var/www/secure:/var/www/tmp
(/var/www is a symlink for /homes/u0/apache)
In such a setting I should be able to execute PHP scripts from any directory under
/homes/u0/apache, but not access any files unless they are under one of the
directories in open_basedir. However, I cannot place any scripts in, say,
/homes/u0/apache/cdf/deadlines/. A minimal file foo.php, saved there, containing
only:
?php echo htmlbodyHello/body/html; ?
Results in the script not executed, with the following error messages:
[Fri Jul 6 17:24:53 2001] [error] PHP Warning: open_basedir restriction in effect.
File is in wrong directory in Unknown on line 0
[Fri Jul 6 17:24:53 2001] [error] PHP Warning: Failed opening
'/homes/u0/apache/htdocs/cdf/deadlines/foo.php' for inclusion (include_path='') in
Unknown on line 0
open_basedir's documentation says that it should only restrict directories from where
a file can be opened by a PHP script.
http://www.php.net/manual/en/configuration.php
Many thanks,
--
Arcady Genkin
---
Full Bug description available at: http://bugs.php.net/?id=11940
--
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]