乘客安装过程中是否需要安装nginx?

我正在尝试为Nginx安装Passenger:

$ gem install passenger $ passenger-install-nginx-module 

在安装过程中,乘客希望编译和安装Nginx。 这是必要的步骤吗?

我检查了我的安装,发现我已经安装了Nginx的Passenger模块:

 appls:/www/redmine # zypper se passenger Loading repository data... Reading installed packages... S | Name | Summary | Type --+---------------------------+--------------------------------------------------+-------- i | rubygem-passenger | Easy and robust Ruby web application deployment | package | rubygem-passenger-apache2 | Passenger apache module | package i | rubygem-passenger-nginx | Passenger Nginx module for Ruby on Rails support | package 

乘客安装过程中可以跳过Nginx安装吗?

您需要使用乘客重新编译nginx。 按照乘客手册。 (我的DNS被破坏了,所以我会在链接恢复后用链接更新这个答案。)

如果我没有弄错,这也是安装者告诉你的。 也许在你的发行版中有一个预先打包的NGINX + Passenger版本?


更新:您可以尝试以下configuration是否可以使用乘客。 另外在你的configuration中寻找一个passenger_rootvariables。 否则,请尝试在您的系统上find乘客软件。

 passenger_enabled on; root /var/sites/redmine/public; 

如果passenger_rootvariables不存在,请尝试将其添加到http {}

 passenger_root /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/passenger-3.0.7; passenger_ruby /opt/ruby-enterprise-1.8.7-2011.03/bin/ruby; 

这些path来自我的系统。

如果您通过gem更新乘客,但您的乘客nginx模块来自您的发行版存储库,则可能存在版本不匹配的情况,所以我build议您执行nginx安装。 由于nginx不会执行dynamic加载的模块(它们在构build时被链接),因此每次更新时都需要使用最新的乘客模块重新构build模块,假定nginx模块的C部分在更新之间发生更改。