Re: Upstream и заголовок Host
Dmitriy Lyalyuev
dmitriy на lyalyuev.info
Вт Янв 22 07:29:42 UTC 2019
Если коротко, то - https://serverfault.com/questions/598202/make-nginx-to-pass-hostname-of-the-upstream-when-reverseproxying
Второй ответ в треде.
Но сама схема, как по мне, выглядит костылем. Костылем и лечить.
--
With best regards,
Dmitriy Lyalyuev
dmitriy на lyalyuev.info
> On Jan 22, 2019, at 08:54, CoDDoC via nginx-ru <nginx-ru на nginx.org> wrote:
>
> Доброе время суток!
>
> Тестовый сервер: 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
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20190122/b2e47d63/attachment.html>
----------- следущая часть -----------
Вложение не в текстовом формате было извлечено…
Имя: smime.p7s
Тип: application/pkcs7-signature
Размер: 3884 байтов
Описание: отсутствует
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20190122/b2e47d63/attachment.bin>
Подробная информация о списке рассылки nginx-ru