URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 90316
[ Назад ]

Исходное сообщение
"Настройка freebsd+apache mpm-itk"

Отправлено gigi1988 , 16-Ноя-10 20:54 
Есть 2 виртуальных хоста, нужно чтобы с одного хоста не возможно было попасть во второй хост. MPM-itk устраивает. Установил.
Проверяю site1.ru командой id выдает uid=1003(web1_admin) gid=1003(web1) groups=1003(web1). А site2 при обращении к php файлам выдает
Warning: Unknown: open_basedir restriction in effect. File(/data/sites/site2/br2.php) is not within the allowed path(s): (/data/sites/site1) in Unknown on line 0

Warning: Unknown: failed to open stream: Operation not permitted in Unknown on line 0

Fatal error: Unknown: Failed opening required '/data/sites/site2/br2.php' (include_path='.:/usr/local/share/pear') in Unknown on line 0

html файлы открывает нормально. Что делать не знаю.
Конфиги:
<VirtualHost *:80>
DocumentRoot "/data/sites/site1/"
ServerName "site1.ru"
<IfModule mpm_itk_module>
AssignUserId web1_admin web1
</IfModule>

<VirtualHost *:80>
DocumentRoot "/data/sites/site2/"
ServerName "site2.ru"
<IfModule mpm_itk_module>
AssignUserId web1_admin web1
</IfModule>


Содержание

Сообщения в этом обсуждении
"Настройка freebsd+apache mpm-itk"
Отправлено Amator , 16-Ноя-10 22:02 
а где в Вашем конфиге закрывающие </VirtualHost> ?

что говорит
apachectl -t
httpd -S

Должно быть
Syntax OK
и в перечне виртуальных хостов
site1.ru
site2.ru

соответственно.


"Настройка freebsd+apache mpm-itk"
Отправлено gigi1988 , 16-Ноя-10 22:08 
> а где в Вашем конфиге закрывающие </VirtualHost> ?
> что говорит
> apachectl -t
> httpd -S
> Должно быть
> Syntax OK
> и в перечне виртуальных хостов
> site1.ru
> site2.ru
> соответственно.

Закрывающий тег здесь пропустил
httpd -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_servers:
*:80   is a NameVirtualHost
default server site2.ru
port 80 namevhost site2.ru
port 80 namevhost site1.ru
Syntax Ok

apachectl -t
Syntax Ok


"Настройка freebsd+apache mpm-itk"
Отправлено Golub Mikhail , 17-Ноя-10 10:38 
>[оверквотинг удален]
> httpd -S
> VirtualHost configuration:
> wildcard NameVirtualHosts and _default_servers:
> *:80   is a NameVirtualHost
> default server site2.ru
> port 80 namevhost site2.ru
> port 80 namevhost site1.ru
> Syntax Ok
> apachectl -t
> Syntax Ok

С самим Apache все верно.
А вот с php - не совсем.

Если для сайта не заданы параметры, то используются общие для php из его php.ini
И, похоже, что в этом php.ini задан параметр open_basedir, который вам совсем не подходит.

Укажите в конфиге апача в секции virtualhost для каждого сайта:
php_admin_value open_basedir "/data/sites/site2" (или site1).


"Настройка freebsd+apache mpm-itk"
Отправлено gigi1988 , 17-Ноя-10 12:08 
>[оверквотинг удален]
>> apachectl -t
>> Syntax Ok
> С самим Apache все верно.
> А вот с php - не совсем.
> Если для сайта не заданы параметры, то используются общие для php из
> его php.ini
> И, похоже, что в этом php.ini задан параметр open_basedir, который вам совсем
> не подходит.
> Укажите в конфиге апача в секции virtualhost для каждого сайта:
> php_admin_value open_basedir "/data/sites/site2" (или site1).

Спасибо действительно заработало.
Но ситуация теперь такая. Хосты работают от разных пользователей. через команду system() выполняемую на site1 создать каталог в site2  не получается. А через site2 в site1 каталог создается. В чем может быть причина? /data/sites/site1 и /dats/sites/site2 принадлежат соответственно пользователем от имени которых работают хосты (их домашние папки)


"Настройка freebsd+apache mpm-itk"
Отправлено Golub Mikhail , 17-Ноя-10 12:46 
>[оверквотинг удален]
>> И, похоже, что в этом php.ini задан параметр open_basedir, который вам совсем
>> не подходит.
>> Укажите в конфиге апача в секции virtualhost для каждого сайта:
>> php_admin_value open_basedir "/data/sites/site2" (или site1).
> Спасибо действительно заработало.
> Но ситуация теперь такая. Хосты работают от разных пользователей. через команду system()
> выполняемую на site1 создать каталог в site2  не получается. А
> через site2 в site1 каталог создается. В чем может быть причина?
> /data/sites/site1 и /dats/sites/site2 принадлежат соответственно пользователем от имени
> которых работают хосты (их домашние папки)

Ну я же не знаю, что у вас еще прописано в php.ini ...
Посмотрите в том же Инете документацию по PHP. Даже с примерами полно.
И тогда вопросов, который был выше, будет гораздо меньше.
Да и не лишним будет понять, что и зачем и где прописывается в конфигах, чтобы обезопасить свои же сервера.

P.S. open_basedir можете вообще отключить, тогда php сможет получать доступ куда угодно ...


"Настройка freebsd+apache mpm-itk"
Отправлено gigi1988 , 17-Ноя-10 14:45 
>[оверквотинг удален]
>> /data/sites/site1 и /dats/sites/site2 принадлежат соответственно пользователем от имени
>> которых работают хосты (их домашние папки)
> Ну я же не знаю, что у вас еще прописано в php.ini
> ...
> Посмотрите в том же Инете документацию по PHP. Даже с примерами полно.
> И тогда вопросов, который был выше, будет гораздо меньше.
> Да и не лишним будет понять, что и зачем и где прописывается
> в конфигах, чтобы обезопасить свои же сервера.
> P.S. open_basedir можете вообще отключить, тогда php сможет получать доступ куда угодно
> ...

Спасибо за помощь. Разобрался