【问题标题】:Passenger preloader error with nginx and apachenginx 和 apache 的乘客预加载器错误
【发布时间】:2023-04-09 15:38:01
【问题描述】:

我有一个 Rails 2 应用程序,我想在 Apache 或 Nginx 上运行,但是对于它们,我都遇到了同样的错误:

nginx.conf

     passenger_root /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini;
     passenger_ruby /usr/bin/ruby;

    ##
    # Virtual Host Configs

    server {
            listen 80;
            server_name web.test.com;
            root /home/vishal/workspace/website/public;
            passenger_enabled on;
    }
    ##

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;

应用程序在乘客独立时运行良好,但导致 nginx 和 apache 出现问题。

我试图了解支持文档,但找不到解决方案。我想在应用程序中使用 nginx。

【问题讨论】:

  • 您的应用似乎使用了错误的 Ruby。看起来您希望您的应用程序在 Ruby 1.8(由 RVM 安装的那个)下运行,但实际上它是在 Ruby 1.9 中运行的。你打算用哪个 Ruby 解释器来运行你的应用程序?
  • 我想要 ruby​​ 1.8 解释器,我该怎么做?需要重新安装passenger和nginx吗?
  • 您需要使用passenger_ruby 配置选项。文档教您如何在使用 RVM 时正确设置此选项。
  • 感谢宏利成功了!!
  • 太棒了。 :) 我已经提交了正确的答案,请将其标记为已接受。

标签: nginx passenger ruby-on-rails-2


【解决方案1】:

所以问题是您在错误的 Ruby 下运行您的应用程序。您希望它在 RVM Ruby 1.8 下运行,但由于您在此处看到的“passenger_ruby /usr/bin/ruby”选项,它实际上是在 Ruby 1.9 下运行的。

您需要使用passenger_ruby 配置选项来告诉Passenger 使用RVM Ruby 1.8。该文档教您如何在使用 RVM 时正确设置此选项。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-21
    • 1970-01-01
    • 2015-04-01
    • 1970-01-01
    • 2011-08-16
    • 2017-03-28
    • 1970-01-01
    相关资源
    最近更新 更多