mod_suexec 与 Passenger 的互动程度如何?

mod_suexec 与 Passenger 的互动程度如何?

在共享服务器(特别是运行 Debian 的 DreamHost 共享服务器,但我不知道这是否重要)上,如果激活了 mod_suexec 并且强制 PHP 和 Python 使用 CGI 或 FastCGI,您是否希望 Passenger 进程以 Apache 用户身份运行,或者以运行 Passenger 支持的应用程序的主目录的用户身份运行?

请解释你答案的依据。

(我猜测是后者,为了与 DreamHost 对 PHP 和 Python 的方法保持一致,但我不清楚 Passenger 如何与 Apache 交互,更不用说与 mod_suexec 交互了。)

答案1

mod_suexec特定于 CGI 设置,这是与乘客完全不同的技术。

Passenger 实现了自己的用户切换方式。用户应用程序的运行方式大致根据以下内容确定:

  1. 如果我们是 Rails 应用程序,则以 的所有者身份运行config/environment.rb。 如果我们是 Rack 应用程序,则以 的所有者身份运行config.ru
  2. 如果确定的用户是root,则使用配置的PassengerDefaultUser
  3. 如果仍然如此root(或未配置),则以用户身份运行,Apache 运行于(例如wwwrunwww-data)。

有关详细信息,请参阅For more information, seehttp://www.modrails.com/documentation/Users%20guide%20Apache.html#user_switching

相关内容