Запуск 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