∞使用 RVM ruby 与 Phusion Passenger
Phusion Passenger 是一个用于 Ruby 和 Python 的应用程序服务器,可以集成到 Apache 和 Nginx 中,也可以独立运行。它目前是 Ruby 最流行的应用程序服务器之一。RVM 允许您非常轻松地将任何 MRI/YARV Ruby 与 Phusion Passenger 结合使用。
RVM 最适合与最新版本的 Phusion Passenger 配合使用。最新版本的 Phusion Passenger 具有对 RVM 的完全集成支持,并且应该开箱即用,无需配置。您只需要告诉 Phusion Passenger 您想为哪个应用程序使用哪个 Ruby。
RVM 也适用于 Phusion Passenger 3.x,尽管更高版本对 RVM 的支持更好。3.x 的说明可以在 这里 找到。
∞使用 RVM 与 Phusion Passenger
请遵循 Passenger 网站上的优秀文档。
∞常见问题解答
问:我可以在 Phusion Passenger 下运行多个项目,每个项目使用不同的 Ruby 版本吗?
答:是的,从 Phusion Passenger 4 开始。
问:如何在 Phusion Passenger 下使用自定义 gemsets?
答:首先切换到该 gemset,然后运行“passenger-config --ruby-command”,如 Phusion Passenger 手册中所述。它会告诉您应该在虚拟主机中放置什么“PasengerRuby”/“passenger_ruby”配置选项。相应地编辑您的虚拟主机并重新启动 Web 服务器。
问:如何将“passenger-status”之类的命令与用户安装结合使用,但以 root 身份运行它们?
答:主要的关键是在 sudoers 文件中使用通配符,如下面的示例所示:
/usr/bin/env GEM_PATH=* GEM_HOME=* PATH=* passenger-status