繁体   English   中英

Nginx和乘客未显示我的Ruby on Rails应用着陆页

[英]Nginx & Passenger not showing my Ruby on Rails app Landing page

我正在尝试在DigitalCloud Droplet上将Ruby on Rails应用程序与PassengerNginx服务器一起部署。

我已经在Ubuntu环境中成功安装了Nginx和Passenger。 我也在/var/www/my_app上克隆了我的rails应用程序,但是我认为nginx配置文件没有正确设置。 我不知道这是什么问题,因为在一些教程中它们具有相同的配置,并且它们告诉一切都很好。

所以我看到的是: Rails错误消息
您可以从my_app/public文件夹中看到它是标准Rails错误页面。

我不知道为什么在所有这些教程中它们都将根文件夹设置为/public ,因为仅存在错误页面和我的图标。 我希望它从我的static page controller显示索引页面,因为它在应用程序routes文件中定义为根url。

这是我的/opt/nginx/conf/nginx.conf文件:

#user  nobody;
worker_processes  1;

events {
    worker_connections  1024;
}

http {
    passenger_root /usr/local/rvm/gems/ruby-2.1.5/gems/passenger-5.0.7;
    passenger_ruby /usr/local/rvm/gems/ruby-2.1.5/wrappers/ruby;

    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  My_App;
        passenger_enabled on;
        root /var/www/my_app/public;

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

我需要它通过名为static_pages控制器在/var/www/my_app/views/static_pages显示名为home.html.erb索引页。 以某种方式向Nginx提供Rails routes文件中的信息是合乎逻辑的,因为它需要知道所有信息,但是我还没有看到有人这样做。 也许您能说出什么是解决方案? 所有教程都说将其定向到公用文件夹,但不起作用。

不管怎么说,多谢拉。

我找到了解决方案。 我需要安装数据库,因为它离不开它。 这很奇怪,因为我以为我只在我的应用需要它来存储东西时才需要一个。 我的错:D

本教程包含了所有内容! http://alexbachuk.com/launch-rails-4-application-with-passenger-and-nginx/希望它也能帮助其他人。

无论如何,找到了解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM