У меня есть настройка веб-сайта, на котором работают 2 веб-приложения.
Одно приложение (fast
) должно обрабатывать страницы каталога.
Другое приложение (slow
) должен обрабатывать страницы клиента / корзины / оформления заказа.
Оба приложения должны работать на одном хосте:
example.com:80 (fast
) и example.com:8000 (slow
)
Конечно, порт 8000 не открывается для посетителя и используется внутренне nginx.
Я хочу, чтобы веб-запросы доходили до slow
приложения, только если fast
приложение вернуло указанный c ответ заголовок, например X-catalog-not-found.
Ожидаемый результат следующий:
- все запросы go до
fast
application example.com:80 - если
fast
приложение обнаружило продукт по uri - оно отображает страницу - , если
fast
приложение не нашло продукт по uri - оно отправляет пустое тело и заголовок ответа X-catalog-not -found - на основе заголовка, полученного в предыдущем шаге, nginx выполняет передачу прокси в
slow
application example.com:8000
Я чувствую, что следует использовать модуль ngx_http_proxy_module или / и nginx_upstream, но не нашел работающего решения после прочтения документов .