LINUX.ORG.RU
ФорумAdmin

массовый хостинг fastcgi и php


0

0

Приветствую.
Настроил связку apache2 + fastcgi + php5, запускаю php через скрипт враппер под своим юзером и группой для каждого пользователя.
При использовании fastcgi + php не доступны команды управления переменными php через php_value, следовательно надо каждому пользователю давать на редактирование php.ini.
Вопрос стоит в том, чтобы запретить пользователям изменять определённые переменные php, но разрешить изменять остальные, как это сделано у многих хостерах. Вопрос - как они это делают в такой связке?)


Ответ на: комментарий от true_admin

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

Deisler
() автор топика
Ответ на: комментарий от Deisler

в php5 точно можно.
разве что локация файла зависит от дистрибутива. например в arch-е это /etc/php/conf.d

Cosmicman ★★
()
Ответ на: комментарий от Deisler

Закинь общий конфиг в /etc/php5/conf.d/, он будет читаться после пользовательского - даже если пользователь попробует менять "не те" параметры - это ни к чему не приведет.

YAR ★★★★★
()
Ответ на: комментарий от true_admin

>Это не остановит ini_set

Через ini_set можно менять только вполне ограниченный список параметров:

http://ru2.php.net/manual/en/ini.list.php

Опять же: «Any directive type set with php_admin_value can not be overridden by .htaccess or ini_set(). To clear a previously set value use none as the value.»

KRoN73 ★★★★★
()
Ответ на: комментарий от true_admin

php_value/php_admin_value apache не будет использовать, т.к. модуль php загружается не apacheм а скриптом враппером через fastcgi (apache ничего не знает про php).

Указал юзеру свой конфиг, а глобальный конфиг указал через переменную PHP_INI_SCAN_DIR, всё работает =)

Deisler
() автор топика
Ответ на: комментарий от true_admin

Ну можно директивы, изменяемые в PHP_INI_SYSTEM прописать в глобальном конфиге, который не будет перекрываться локальным.

Deisler
() автор топика
Ответ на: комментарий от Deisler

А через ini_set можно выставлять директивы в пользовательских скриптах только относящихся к PHP_INI_USER и PHP_INI_ALL, Вообщем, надо поэксперементировать, будут ли заменяться директивы относящиеся к PHP_INI_USER и PHP_INI_ALL в глобальном конфиге.

Deisler
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.