Где и как прописать права на доступ из дирректории одного сайта в дирректорию другого?

ptiZa

Новичок
Очень нужен совет..
Есть домен domain, файлы сайта которого на сервере он располагаются в папке /owner/folder1
Также существует поддомен subdomain, файлы которого хранятся в папке /owner/folder2
При попытке из файла http://subdomain.domain/index.php обратиться к файлам из /owner/folder1/files/ с помощью функции opendir() выдается ошибка:

Warning: opendir() [function.opendir]: open_basedir restriction in effect. File(owner/folder1/files/) is not within the allowed path(s): (/owner/folder1/:/owner/folder2/tmp:/var/www/subdomain.domain/web:/srv/www/subdomain.domain/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin) in /owner/folder2/index.php on line 10
Warning: opendir(/owner/folder1/files/) [function.opendir]: failed to open dir: Operation not permitted in /owner/folder1/index2.php on line 10

Доступ к этой папке нужен, чтобы считывать оттуда изображения и выводить их на странице. В базе данные о фотографиях не хранятся.
Где и как можно прописать права на доступ из дирректории одного сайта в дирректорию другого?
 

ptiZa

Новичок
как? смотрела синтаксис, не увидела как открыть одну дирректорию для доступа в другой? в основном примеры "расшаривания" какой-либо дирректории для всех пользователей, как я понимаю. т.е. если я сделаю так

php_admin_value open_basedir /owner/folder1/

то дирректория folder1 будет доступна из любой другой дирректории выше по дереву и для любой "параллельной" ей типа /owner/folder2/ или /owner/folder3/web/test/ ? или я что-то не так понимаю? и можно ли открыть дирректорию только на чтение?
 

С.

Продвинутый новичок
Эта директива просто перечисляет, куда может совать свой нос PHP скрипт. Больше ничего она не делает. Никаких других директив типа доступа однога сайта в другой нет. Это просто разные директории на одном сервере и доступ к ним управляются файловой системой.
 

Redjik

Джедай-мастер
Кстати немного оффтоп но все же по теме, если pool у, в php-fpm мы прописываем юзера, то php будет от этого юзера работать?
 

ptiZa

Новичок
Эта директива просто перечисляет, куда может совать свой нос PHP скрипт. Больше ничего она не делает. Никаких других директив типа доступа однога сайта в другой нет. Это просто разные директории на одном сервере и доступ к ним управляются файловой системой.
т.е. если написать такую строку
php_admin_value open_basedir /owner/folder1/
то php скрипт из /owner/folder2/ сможет "сунуть свой нос" в /owner/folder1/ ?
 

Gremboloid

инженера Гр...
Redjik
Тогда PHP Мастер-процесс работает под тем пользователем под которым он запущен (обычно рут), а сам пул работает под тем пользователем который указан у него в настройках
 

Redjik

Джедай-мастер
Gremboloid
ну если скрипт создает файл, кто будет owner? тот кто в пуле прописан?
 

Gremboloid

инженера Гр...
ptiZa
В php_admin_value open_basedir должны перечисляться все пути куда php может сунуть нос,
т.е., в твоем случае, для subdomain.domain в настройках open_basedir должно содержать и родную папку /owner/folder2 и ту куда лезет скрипт /owner/folder1/files
См. комментарий
 
Сверху