应用程序未在Ubuntu 18.04,NGINX,乘客配置中加载

时间:2018-05-14 21:23:21

标签: ruby-on-rails nginx passenger ubuntu-18.04

我已经在Ubuntu 18.04上安装了NGINX和Passenger,并且在我的配置出现问题时遇到了任何问题。

/etc/nginx/nginx.conf

http {
    # pretty much the default configuration except for this...
    passenger_root /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini;
    include /etc/nginx/sites-enabled/*;
}

/ etc / nginx / sites-enabled / my_app (这是指向网站的符号链接)

server {
  listen 80;
  server_name my.app.ip.address;

  root /path/to/public/folder;

  passenger_enabled on;
  passenger_app_root /path/to/app/root; # not public folder
  passenger_ruby /home/appuser/.rvm/gems/ruby-2.0.0-p648/wrappers/ruby;

  rails_env staging;

  # redirect server error pages to the static page /50x.html
  error_page   500 502 503 504  /50x.html;
  location = /50x.html {
    root html;
  }
}

systemctl status nginx 的结果 enter image description here

passenger-status 的结果 enter image description here

/var/log/nginx/error.log 的输出 enter image description here

当我尝试通过网络浏览器访问IP地址时,它拒绝连接并建议我检查连接和防火墙。对问题可能是什么的任何想法?

1 个答案:

答案 0 :(得分:0)

您需要删除passenger_app_root。该指令适用于乘客的位置,而非应用程序的根目录。

如果您正在使用标准的RoR布局,其中public是应用程序根目录的子文件夹,则您不需要指定任何内容,但如果它们与指令完全不同,那么正在查找的是passenger_root,它可以配置应用程序的根目录。