Настройте прокси-сервер NGINX для сокета Gunicorn и Tomcat

#nginx #tomcat #gunicorn

Вопрос:

Я пытаюсь настроить NGINX для перенаправления входящего трафика либо на Gunicorn (для основного приложения django), либо на tomcat.

Приложение django работает по адресу http://localhost с такой конфигурацией. Но у меня возникли проблемы с доступом к tomcat (на порту 8080) по адресу http://localhost/admin-tomcat. Geoserver-это веб-приложение tomcat, и я хотел бы получить к нему доступ по адресу http://localhost/admin-geoserver.

 server {  listen 80;  server_name localhost;  server_name_in_redirect off;  proxy_set_header Host $host:$server_port;   location = /favicon.ico { access_log off; log_not_found off; }  location /static/ {  root /path/to/django/project;  }   location / {  include proxy_params;  proxy_pass http://unix:/run/gunicorn.sock;  }   location /admin-tomcat/ {  proxy_set_header X-Real-IP $remote_addr;  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  proxy_pass http://localhost:8080;  }   location /admin-geoserver/ {  proxy_set_header X-Real-IP $remote_addr;  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  proxy_pass http://localhost:8080/geoserver;  } }   

Похоже, что NGINX перенаправляет http://localhost/admin-tomcat Джанго, который не находит кота (что нормально). Что не так с моей конфигурацией ?