【问题标题】:Installing passenger in production environment在生产环境中安装乘客
【发布时间】:2011-02-26 07:00:55
【问题描述】:

我已经成功地安装了带有 rvm 和 rails 的 ruby​​ 1.9.2,但是在安装乘客时遇到了一些麻烦。我的 /opt 目录中有源文件。当我在乘客 bin 目录中运行 sudo ./passenger-install-nginx-module 时,出现此错误:/usr/bin/env: ruby​​: No such file or directory

rvm 信息:

Ruby 路径“/home/me/.rvm/rubies/ruby-1.9.2-p180/bin/ruby”

【问题讨论】:

  • $PATH 在终端输出什么?它必须包含您的 ruby​​ 路径“/home/me/.rvm/rubies/ruby-1.9.2-p180/bin/”

标签: ruby-on-rails


【解决方案1】:

使用 rvmsudo 而不是 sudo 来运行乘客安装命令。此外,您可能需要指定该命令的完整路径。在我的服务器上是这样的:

rvmsudo /usr/local/rvm/gems/ruby-1.9.2-p290/gems/passenger-3.0.11/bin/passenger-install-apache2-module

【讨论】:

    【解决方案2】:

    您应该能够生成 RVM 包装脚本(用于选择 RVM ruby​​ 的 shell 脚本):

    rvm wrapper default_192
    

    ...然后在您的Passenger配置中设置PassengerRuby(告诉Passenger使用哪个ruby):

    PassengerRuby /home/your_user/.rvm/bin/default_192
    

    【讨论】:

      【解决方案3】:

      如果您发现自己想知道为什么您的 vagrant box 突然停止加载您的网站,并且您安装了乘客 gem,那么很有可能它已经自动升级了 gem,需要您对 apache 进行一些更改模块。这只是我遇到的一个问题。

      因此,鉴于共享知识,如果您正在运行 apache,只需使用您喜欢的编辑器打开以下文件以在命令上进行编辑。

      /etc/apache2/conf.d/passenger

      并将三行替换为以下内容:

      . LoadModule passenger_module /var/lib/gems/1.9.1/gems/passenger-4.0.10/buildout/apache2/mod_passenger.so PassengerRoot /var/lib/gems/1.9.1/gems/passenger-4.0.10 PassengerDefaultRuby /usr/bin/ruby1.9.1

      我们基本上是在替换模块应该使用的版本号。

      【讨论】:

        猜你喜欢
        • 2011-11-07
        • 1970-01-01
        • 1970-01-01
        • 2011-09-06
        • 1970-01-01
        • 2014-09-01
        • 1970-01-01
        • 1970-01-01
        • 2016-07-12
        相关资源
        最近更新 更多