Запуск apache + mod_wsgi от имени другого пользователя

У меня есть проект django, который я перехожу с dev-сервера на apache. Мне удалось получить его на сервере с mod_wsgi, но он работает как Apache. В документации Mod_wsgi сказано, что если apache запускается с правами root, можно запустить процесс mod_wsgi от имени другого пользователя.

В1: Возможно ли запустить mod_wsgi от имени другого пользователя без запуска apache от имени root?

В2: Если ответ на вышеприведенный ответ отрицательный, как мне заставить Apache работать от имени пользователя root? Я использую предоставленный репозиторий пакет httpd на компьютере CentOS 6.

1 ответ

Решение

Apache каждый раз запускается с правами root на RHEL-производных (например, CentOS). Затем он использует setuid для переключения на пользователя / группу, настроенную в httpd.conf.

Из документов mod_wsgi:

Обратите внимание, что, обозначив, что процессы-демоны должны создаваться с использованием директивы WSGIDaemonProcess, директива WSGIProcessGroup по-прежнему должна использоваться для делегирования определенных приложений WSGI для выполнения в этих процессах-демонах.

Также обратите внимание, что имя группы процессов демона должно быть уникальным для всего сервера. То есть нельзя использовать одно и то же имя группы процессов демона на разных виртуальных хостах.

Опции, которые могут быть предоставлены директиве WSGIDaemonProcess:

пользователь = имя | Пользователь =# UID

Другие вопросы по тегам