[英]Nginx & Passenger not showing my Ruby on Rails app Landing page
我正在尝试在DigitalCloud Droplet上将Ruby on Rails
应用程序与Passenger
和Nginx
服务器一起部署。
我已经在Ubuntu环境中成功安装了Nginx和Passenger。 我也在/var/www/my_app
上克隆了我的rails应用程序,但是我认为nginx配置文件没有正确设置。 我不知道这是什么问题,因为在一些教程中它们具有相同的配置,并且它们告诉一切都很好。
所以我看到的是:
您可以从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.