Nginx, как сделать балансировку?
Есть такой upstream:
upstream nodes {
hash $request_uri;
server node-1;
server node-2;
}
И соответственно proxy для него:
location /api {
proxy_pass http://nodes;
}
Сейчас балансировка идет на основании хеша из $request_uri.
Вопросы:
1) Как сделать hash на основании своего, http хедера. Например MyHeader.
2) Как сделать hash на основании части пути. Важно, чтобы это не повлияло на функциональность, я говорю о rewrite.
Например, для пути /api/CREATE_HASH_FROM_ME/users
Хеш нужно взять из CREATE_HASH_FROM_ME.
А из пути хеш убрать, то есть путь должен стать вида: /api/users:
Как такое выполнить?