Почему proxy_pass http://backends/; под местоположением /textcat занесите меня в корень сервера(локальный: 8081) и proxy_pass http://бэкенды; (без следа /) приводит меня к (по-видимому) локальный: 8081/textcat.
Я пытаюсь разместить два приложения, работающих локально на сервере. Эти два приложения работают на порту 8081 и 8082. Я хотел бы получить доступ к приложению на 8081 через /textcat местоположение и 8082 с помощью /нер. Я смог сделать это с конфигурацией ниже. Но я не совсем понимаю, почему это работает?
восходящие серверные части {
локальный хост сервера: 8081; # измените порт, который слушает веб-приложение.
}
бэкенды восходящего потока_NER {
локальный хост сервера: 8082; # измените порт, который слушает веб-приложение.
}
сервер {
слушать 443 ssl;
имя сервера "";
...Прочие SSL...
местоположение = / textcat {
proxy_pass http://backends/;
}
местоположение / нер {
proxy_pass http://backends_NER/;# Кажется, это работает из-за косой черты в конце. Поскольку http_referrer — это /ner, наш путь к прокси-серверу должен заканчиваться /
}
# необходимо перенаправить запрос на любое местоположение, и если реферер /textcat, выполните localhost:8081
место расположения / {
если ($http_referer ~* (/textcat)) {
proxy_pass http://localhost:8081;
}
если ($http_referer ~* (/ner)) {
proxy_pass http://localhost:8082;
}
}
}