Назад | Перейти на главную страницу

Перенаправленный запрос Nginx на основе параметра URL

Сценарий:

Веб-запросы поступают в nginx через порт 80. Мне нужно пересылать запросы на основе параметра URL.

Если URL содержит userId=foo в любом месте URL-адреса, он должен попасть на сервер A

и если URL-адрес содержит userId=bar в любом месте URL, тогда он должен попасть на сервер B

Какой вариант конфигурации я могу использовать для этого?

/ и т.д. / nginx / сайты-доступные / по умолчанию

 server {
    listen      80;
    server_name example.com;

    location ~ userId=foo {
         return     301 http://domainOfServerA$request_uri;
    }

    location  ~ userId=bar {
        return      301 http://domainOfServerB$request_uri;
    }
 }

В любом случае, если bar / foo - переменная, вы должны написать для этого regexp.