Welcome! Log In Create A New Profile

Advanced

Upstream и заголовок Host

CoDDoC via nginx-ru
January 22, 2019 01:56AM
Доброе время суток!

Тестовый сервер: test.local. В нем тестовый кластер:
upstream cdn {
    server <IP_1>:<port_1>;
    server <IP_2>:<port_2>;
    ....
}

или:
upstream cdn {
    server cdn001.test.local:<port_1>;
    server cdn002.test.local:<port_2>;
    ....
}

Не принципиально, ибо "cdn001.test.local" резолвится в <IP_1> и т.д.

Само собой, "proxy_http_version 1.1;" и из какого-то локейшена "proxy_pass http://cdn;"
Теперь смотрю, что приходит, например, на выбранный бэкенд.
Ожидаю там увидеть в заголовке Host значение <IP> или 'cdn###.test.local'.
Вижу: http header: "Host: cdn". Что не так?

Входящий контроль проверяет правильность заголовка Host.
Все, что не соответствуют разрешенным, посылаются на 400. Можно, конечно, добавить фильтрацию по белому списку, что-то типа "такой-то IP должен прислать такой-то заголовок". Но (ИМХО) костыль.

proxy_set_header 'Host' $upstream_addr; - бесполезно.
$upstream_addr получает значение ПОСЛЕ proxy_pass.

Попутно вопрос о $upstream_addr.
Ее можно еще как-то использовать, кроме как в логах? Например, отправить в php, но без костылей?

Спасибо.
--_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Upstream и заголовок Host

CoDDoC via nginx-ru January 22, 2019 01:56AM

Re: Upstream и заголовок Host Attachments

Dmitriy Lyalyuev January 22, 2019 02:30AM

Re: Upstream и заголовок Host

Alex Tkachuk January 22, 2019 07:30AM

Re: Upstream и заголовок Host

Maxim Dounin January 22, 2019 09:32AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 87
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready