В линуксе есть какой-то прикол с резолвом .local доменов. Гляньте на /etc/nsswitch.conf. Там определяется очередность служб для резолва адресов. Для .local оно как-то отдельно идет.
Отправлено с iPhone > 22 янв. 2019 г., в 09:29, Dmitriy Lyalyuev <dmit...@lyalyuev.info> написал(а): > > Если коротко, то - > https://serverfault.com/questions/598202/make-nginx-to-pass-hostname-of-the-upstream-when-reverseproxying > > Второй ответ в треде. > Но сама схема, как по мне, выглядит костылем. Костылем и лечить. > > -- > With best regards, > Dmitriy Lyalyuev > dmit...@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 > > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru