我当前正在将我的应用程序安装在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,但我无法访问它。
答案 0 :(得分:0)
对于Rails项目,Nginx根目录应以public
结尾:
root /home/ubuntu/happer-api/public;
您还可以尝试从域名中删除初始点吗?
`server_name .example.com;`
并删除其他两个以3001
和3002
结尾的上游服务器。您的瘦身只可以吃一个!