Доброго дня! Занялся разворачиванием небольшого хостинг-сервера на openSUSE 11.4, впринципе все уже сконфигурировано апач работает, перл и пхп в режиме модулей тоже.
Но такой вариант меня не совсем устраивает. Мне нужно чтобы php и perl скрипты выполнялись через cgi интерфейс с указанием пользователя. Иначе говоря, я бы мог видеть кто например больше всего грузит своими скриптами машину, определить для каждого юзера опеределенное количество памяти и конф. php.
Насколько знаю, это реально реализовать с помощью suexec и suphp. Но ни тот, ни другой совершенно не завелись. Да еще и параметры suexec не поменять, они намертво вписаны, тут только перекомпил, что вообще не вариант.
Сейчас то уже я вернул все назад, так что конфиги/логи уже не показать. Мне, скажем так, сейсас больше нужна консультация человека кто проворачивал подобное под сусей, что писал в конфигах апача, особенно в директиве <VirtualHost>.
Неужели блин фрюбсдю ставить придется, неужели с разграничением прав апача в линуксах беда? Просто привык я к сусе, уже вслепую все что нужно могу заточить.
Planet_Dust, насколько знаю- нет. Никакого рукоприкладства к готовым бинарям. Можно конечно скомпилить и ставить из рпмки тот же suexec, не предусмотрено цивилизованных вариантов.
Почему же беда? В Линуксе есть все те же mod_cgi и suexec.
Надо ли оно тебе получается, если в репрозиторный суэкзек с правкой параметров не залезешь?
проще простого, не важно на какой платформе. Пересобрать апач с suexec, при сборке указать необходимый конфиг suexec, потом накатить старый конфиг от апача, добавить загрузку модуля
Апач стоит из бинарников, со всеми библиотеками и модулями, все детально настроено, он завязан в Yast'овский sysconfig (указание модулей и пр). Виртуал хосты прописаны, все cgi библиотеки стоят.
Пересобрать апач? Не вариант.
В /srv/www лежит так называемый дефолтный пустой хост, который прогружается первым. Естественно ни о каких public_html речь и не идет.
Хосты лежат в /home и имеют примерный вид:
/home/host-username/cgi-bin/
/home/host-username/etc/
/home/host-username/logs/
/home/host-username/tmp/
/home/host-username/www/
Где cgi-bin, директория в которой в идеале лежит бинарный пхп и выполняются перлскрипты с различными инклудсами от имени юзера.
etc - папка где будет лежать php.ini для юзера и прочие настройки.
logs - ну понятно, логи они и есть логи, настроил ротацию логов с помощью cronolog, работает как часы, тут проблем нет.
tmp - сессии, кэши, кукисы и прочее отдельно для юзера, чтобы не засорять корневой /tmp.
www - папка где будут выполняться php скрипты от имени юзера и разумеется обыкновенный html.
R4z0R написал:
добавить загрузку модуля
text
LoadModule suexec_module modules/mod_suexec.so
, а в <VirtualHost> добавить строку
text
SuexecUsegGroup username grpname
Прописывал, модуль точно стоит, и настройки указаны, но не те к сожалению, после указания юзера в виртуалхостах апач тупо ругается:
suPHP пробовал, там уже другая канитель - бинарник совершенно не обрабатывал скрипты или делал это ошибочно.
Вот мне лучше нужен человек, который настраивал подобное на сусе. Показал и объяснил как нафиг запустить Perl и PHP через CGI под определенным юзером. Так ведь никто этого и не объяснил, что писать в виртуалхосты то для запуска. Гуглил, разные варианты везде, и по-разному выпендриваются.
Сейчас оба как модуль запущены, но это не самый лучший вариант. Т.к. если какой то дядя мне положит машину, я лишь буду знать что это апач, юзер wwwrun с группой www. И у этих дядей один php.ini на всех, что тоже не приемлимо.
Как я понимаю чтобы весь мусор сливался в пользовательскую папку /tmp это нужно указать в php.ini, директива "session", так?
Denlookh написал:
В Линуксе есть все те же mod_cgi и suexec.
Далеко не те же, в BSD реализация таки несколько иначе.
Denlookh написал:
Надо ли оно тебе получается, если в репрозиторный суэкзек с правкой параметров не залезешь?
В моем случае уже равносильна переустановке ОСи. Т.е. тут проще уже будет фряху воткнуть и из портов все собрать как захочется да перенастроить, чем ковырять и париться с сорсами на линупсе подтирая зависимости в Yast'е.
Дело то как раз в этом и есть, что все готово, все заточено, только вот Perl и PHP не под юзерами бегает.
Дык, я думаю тут больше стоит смотреть не на то, что настройки не те, а на то, что апач ругнулся, не увидел что мол suexec в нем прописан, причем прописан и влючен штатно, тем более я ничего не понимаю.
Насчет моего предыдущего сообщения, пардоньте, действительно у суси тоже есть репозиторий Source.
Ну, вы-первых, у меня не Red Hat, во вторых апач у меня не 2.0.46, а 2.2.17, в третьих тут все иначе.
от дистрибутива ничего не зависит, только команды будут отличаться - апач он везде остается апачем и конфиги одинаковы. В чем отличие? что настройки разнесли в отдельные файлы?