mkdir: open basedir restriction in effect и конечный слеш

kruglov

Новичок
mkdir: open basedir restriction in effect и конечный слеш

Интересный баг/не баг (?)
PHP:
mkdir('/home/username/public_html/content/xxx/');
(папка content существует) выдает "Warning: mkdir(): open_basedir restriction in effect. File(/home/username/public_html/content/xxx/) is not within the allowed path(s): (/home/username:.)"

Теперь убираем конечный слеш, т.е.
PHP:
mkdir('/home/username/public_html/content/xxx');
и все создается.

PHP 4.3.11

Вот phpinfo:
http://nlpnews.ru/phpinfo.php
 

tony2001

TeaM PHPClub
/usr/src/dev/clean/php-src_4_4> ./sapi/cli/php -r 'mkdir("/www/3");'

Warning: mkdir(): open_basedir restriction in effect. File(/www/3) is not within the allowed path(s): (/tmp) in Command line code on line 1
/usr/src/dev/clean/php-src_4_4> ./sapi/cli/php -r 'mkdir("/tmp/3");'
/usr/src/dev/clean/php-src_4_4> ./sapi/cli/php -r 'mkdir("/tmp/4/");'
/usr/src/dev/clean/php-src_4_4> ./sapi/cli/php -v
PHP 4.4.1-dev (cli) (built: Aug 16 2005 15:54:34) (DEBUG)
 

kruglov

Новичок
baev
На месте php мне себя представить трудно, а как действует штатная шелловая и сишная mkdir, я в курсе. Ей на слеш положить.
Тут фигня не в том, что папка не создается, а в том, open_basedir restriction начинает ее мнить находящейся непонятно где. В /, что ли. На хостинге с PHP 4.3.10, правда, но без restrictionов папка создается на ура.

tony2001
Вы хотите сказать , что это пофиксено или что у меня криво настроенный PHP?
 

Steamroller

Новичок
На месте php мне себя представить трудно, а как действует штатная шелловая и сишная mkdir, я в курсе. Ей на слеш положить.
Однако же шелловская не создает папку, если ее родительской папки не существует... то есть ведут себя все по-разному.
 

kruglov

Новичок
Steamroller
Я же сказал в первом посте, папка content существует

Создаю папку content/xxx/ - облом, создаю content/xxx - ок.

-~{}~ 29.09.05 11:37:

Если бы папки content не существовало, то и phpшная меня бы послала.

-~{}~ 29.09.05 11:38:

(The recursive parameter was added as of PHP 5.0.0. )
 
Сверху