Обратный прокси к указанному серверу из пула, если конкретный сервер не может быть определен - PullRequest
0 голосов
/ 10 декабря 2018

В моей конфигурации nginx (взято из здесь ) nginx действует как обратный прокси на основе значения заголовка x_server_select:

upstream apache {
     server 127.0.0.1:8080;
}

upstream staging {
     server 127.0.0.1:8081;
}

upstream development {
     server 127.0.0.1:8082;
}

# map to different upstream backends based on header
map $http_x_server_select $pool {
     default "apache";
     staging "staging";
     dev "development";
}

server {
     listen 80;
     server_name example.com;
     location / {
          proxy_pass http://$pool;

          #standard proxy settings
          proxy_set_header X-Real-IP $remote_addr;
          proxy_redirect off;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header Host $http_host;
          proxy_redirect off;
          proxy_set_header X-Forwarded-Proto $scheme;
          proxy_set_header X-NginX-Proxy true;
          proxy_connect_timeout 600;
          proxy_send_timeout 600;
          proxy_read_timeout 600;
          send_timeout 600;
}

Это прекрасно работает, однако, если нетx_server_select присутствует заголовок. Я хочу, чтобы nginx прокси-запрос на случайный сервер из вышестоящего списка.Как я могу это сделать?

...