修复404 Nginx并变薄?

时间:2019-05-14 18:00:12

标签: ruby nginx thin

我当前正在将我的应用程序安装在ubuntu服务器上。而且我想知道为什么,当我尝试访问我的API时,nginx会返回404。

我已经配置了Thin和Nginx,但是我不知道为什么它不起作用,并且作为该领域的新手,我承认我不知道从哪里开始。

我尝试更改瘦配置和nginx配置,但仍无任何作用。

薄配置

user: www-data
group: www-data
pid: tmp/pids/thin.pid
timeout: 30
wait: 30
log: log/thin.log
max_conns: 1024
require: []
environment: production
max_persistent_conns: 512
servers: 1
threaded: true
no-epoll: true
address: 0.0.0.0
port: 3000
daemonize: true
chdir: /home/ubuntu/happer-api
tag: happer-api

Nginx配置

upstream myapp {
      server 127.0.0.1:3000;
      server 127.0.0.1:3001;
      server 127.0.0.1:3002;
    }
    server {
      listen   80;
      server_name .example.com;

      access_log /home/ubuntu/happer-api/log/access.log;
      error_log  /home/ubuntu/happer-api/log/error.log;
      root     /home/ubuntu/happer-api;
      index    index.html;

      location / {
        proxy_set_header  X-Real-IP  $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header  Host $http_host;
        proxy_redirect  off;
        try_files /system/maintenance.html $uri $uri/index.html $uri.html @ruby;
      }

      location @ruby {
        proxy_pass http://myapp;
      }
    }

我正在使用EC2实例,并使用亚马逊工具打开了端口

我的API上也有活跃的admin,但我无法访问它。

1 个答案:

答案 0 :(得分:0)

对于Rails项目,Nginx根目录应以public结尾:

root     /home/ubuntu/happer-api/public;

您还可以尝试从域名中删除初始点吗?

`server_name .example.com;`

并删除其他两个以30013002结尾的上游服务器。您的瘦身只可以吃一个!