configuração nginx para subdomínio e servidor proxy

configuração nginx para subdomínio e servidor proxy

Eu estava tentando muitas outras soluções postadas aqui e ninguém pode me ajudar a resolver meu problema. Eu tenho uma configuração nginx simples com https e um aplicativo node.js com o caminho principal /e para um subdomínio outro caminho /api. Consigo acessar mywebapp.comcorretamente, mas se tento acessá- api.mywebapp.comlo, ele me redireciona para a página "Bem-vindo ao nginx". Eu tenho o registro DNS api.mywebapp.comapontando para o endereço IP do meu servidor.

Estes são meus blocos de configuração do nginx:

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;

    server_name mywebapp.com;

    # SSL
    include /etc/letsencrypt/mycerts.conf;
    include /etc/letsencrypt/options-ssl-nginx.conf;

    # reverse proxy
    location / {
        proxy_pass http://localhost:8000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_cache_bypass $http_upgrade;
    }
}

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;

    server_name api.mywebapp.com;

    # SSL 
    include /etc/letsencrypt/mycerts.conf;      
    include /etc/letsencrypt/options-ssl-nginx.conf;

    location /api {
        limit_req zone=mylimit;
        proxy_pass http://localhost:8000/api;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_cache_bypass $http_upgrade;
    }
}

O que estou perdendo?

Responder1

Você configurou seu proxy para

location /api {
  # ...
}

Portanto, só é acessível com https://api.mywebapp.com/api/.

Você provavelmente deseja mudar isso para

location / {
  proxy_pass http://localhost:8000/api;  # <- keep this
  # ...
}

informação relacionada