@TechNOIR

Nginx. Как правильно разграничить два приложения на одном бэкенде?

Всем привет!

Подскажите пожалуйста. Как правильно разграничить два приложения на одном бэкенде?
В текущем конфиг конфиг простой
server {
    listen 80;
    server_name  service.site.com;
    return 301 https://$host$request_uri;
}
server {
    listen       443 ssl;
    server_name service.site.com;
    include /etc/nginx/ssl.conf;

    # HTTP
    location / {
        proxy_pass http://127.0.0.1:9090/;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $server_name;
        proxy_set_header X-Forwarded-Port $server_port;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_http_version 1.1;
    }
}


При открытии https://service.site.com открывается https://service.site.com/console (127.0.0.1:9090)
У меня есть внутреннее приложение на бэкенде с ссылкой https://service.site.com/apps/my (127.0.0.1:9090//apps/my)

В итоге хочется перенастроить так:
https://service.site.com > https://service.site.com/apps/my (127.0.0.1:9090//apps/my) (редирект или реврайт лучше?)
https://service.site.com/console > https://service.site.com/console (127.0.0.1:9090)

Как правильно это сделать? Спасибо заранее
  • Вопрос задан
  • 91 просмотр
Пригласить эксперта
Ответы на вопрос 1
ddv88
@ddv88
Binance Futures
Создать еще один server и указать в нем другой локейшен. Например на другом порте.

Первый ресурс
server {
    listen 80;
    server_name  service.site.com;
    return 301 https://$host$request_uri;
}
server {
    listen       443 ssl;
    server_name service.site.com;
    include /etc/nginx/ssl.conf;

    # HTTP
    location / {
        proxy_pass http://127.0.0.1:9090/;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $server_name;
        proxy_set_header X-Forwarded-Port $server_port;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_http_version 1.1;
    }
}


Второй ресурс
server {
    listen 80;
    server_name  anotherservice.site.com;
    return 301 https://$host$request_uri;
}
server {
    listen       443 ssl;
    server_name anotherservice.site.com;
    include /etc/nginx/ssl.conf;

    # HTTP
    location / {
        proxy_pass http://127.0.0.1:9091/;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $server_name;
        proxy_set_header X-Forwarded-Port $server_port;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_http_version 1.1;
    }
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы