FreeBSd > WWW
Проблема с правами на запись.
Kostya:
Используя Syscp.
Столкнулся с проблемой: домашняя директория виртуального юзера создаётся с стандартными правами 755, а файлы 644. Веб сервер работает от www:www, соответственно через веб-скрипты нет возможности записывать в директорию (создавать папки, изменять файлы), а хостящиеся сайты подразумевают данную возможность. Как быть ?!
muff:
Используйте Apache c ITK MPM, который позволяет запускать скрипты, выполняемые веб-сервером, с правами пользователя виртуального хоста, а не веб-сервера. Установить его можно из системы портов: /usr/ports/www/apache22-itk-mpm.
Соответственно, в описание виртуального хоста необходимо указывать пользователя и группу, от имени которого будут запускаться скрипты. Пользователь и группа должы существовать!
Пример записи:
--- Код: ---<IfModule itk.c>
AssignUserID telo telo
</IfModule>
--- Конец кода ---
Kostya:
А вот я думал, что open_basedir отвечает за такой функционал.
Ошибаюсь, да?!
Kostya:
И всё же об этом itk: ничего, что пользователи syscp виртуальные ?!
Я именно их должен и прописывать ?!
muff:
Если пользователь не будет существовать, то apache "вылетит" с ошибкой. Шелл пользователям не нужно выдавать. Пример:
--- Код: ---# pw groupadd -n wwwuser1 -g 1004
# pw useradd -n wwwuser1 -u 1004 -g wwwuser1 -c WWWUser -d /nonexistent -s /sbin/nologin
--- Конец кода ---
Только за UID следите. Попробуйте запустить Apache-ITK, и результаты работы смотрите в top - увидите, что процессы apache запускаются от разных пользователей.
Навигация
Перейти к полной версии