Назад | Перейти на главную страницу

В какой степени mod_suexec взаимодействует с Passenger?

На общем сервере (в частности, на общем сервере DreamHost, на котором запущен Debian, но я не знаю, имеет ли это значение) с активированным mod_suexec и с PHP и Python, вынужденными использовать CGI или FastCGI, ожидаете ли вы, что процессы Passenger будут запускаться от имени пользователя Apache или как пользователь, из домашнего каталога которого запускается приложение на базе Passenger?

Объясните, пожалуйста, основу вашего ответа.

(Я предполагаю, что последнее, для согласованности с подходом DreamHost к PHP и Python, но я не знаю, как Passenger взаимодействует с Apache, не говоря уже о mod_suexec.)

mod_suexec специфичен для настроек CGI, которые полностью отличаются от пассажирских.

Пассажир реализует собственный способ переключения пользователей. Пользовательские приложения выполняются в соответствии со следующим общим определением:

  1. Если мы являемся приложением Rails, запускаем от имени владельца config/environment.rb. Если мы являемся Rack-приложением, запускаем от имени владельца config.ru.
  2. Если бы определенный пользователь был root, используйте настроенный PassengerDefaultUser
  3. Если бы это еще было root (или ненастроенный), запускать от имени пользователя, под которым запускается Apache (например, wwwrun или www-data).

Для получения дополнительной информации см. http://www.modrails.com/documentation/Users%20guide%20Apache.html#user_switching