Добрый день, подскажите, пожалуйста мне на веб-сервере хотелось бы в X-Real-IP

передать адрес из переменной x-forward-for

Если я просто занесу
proxy_set_header X-Real-IP $x_forward_for;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

nginx ругается, что нет такой переменной, хотя в логах она есть




что я не так делаю?

14 ответов

10 просмотров

добавить '$http_' патамушта $http_ аксессор к значению заголовков

Восемь-Ног Автор вопроса
Konstantin Romanenko
добавить '$http_' патамушта $http_ аксессор к знач...

$http_x_forward_for вы так предлагаете? я пробовал вроде с аксесором, но он ругался Сейчас еще раз попробую

Восемь Ног
$http_x_forward_for вы так предлагаете? я пробовал...

я всего лишь предлагаю как в документации, но, вы в праве не согласиться http://nginx.org/r/$http_/ru

Восемь-Ног Автор вопроса
Konstantin Romanenko
я всего лишь предлагаю как в документации, но, вы ...

Вы все верно говорите, но сам по себе x_forward_for массив, и как взять первый самый ip адрес из него непонятно(

Восемь Ног
Вы все верно говорите, но сам по себе x_forward_fo...

Отрезать можно map с регуляркой, но, предполагаю что вам лучше настроить real_ip модуль и получать адрес в переменной remote_addr

Восемь-Ног Автор вопроса
Konstantin Romanenko
Отрезать можно map с регуляркой, но, предполагаю ч...

У меня несколько прокси подряд и настоящий ip адрес клиента теряется и я не очень понимаю, как бы сделать правильно remote_addr если исопльзовать, то используется адрес прокси сервера И я не могу понять, как сделать так, чтобы в X-Real-IP сохранить адрес клиента

Восемь Ног
У меня несколько прокси подряд и настоящий ip адре...

на первом nginx смотреть заполнен ли $proxy_add_x_forwarded_for и дальше по каскаду выставлять proxy_set_header X-Forwarded-For $remote_addr; Предварительно настроив https://nginx.org/ru/docs/http/ngx_http_realip_module.html на всём каскаде nginx Или промежуточные прокси могут быть не nginx ?

Восемь-Ног Автор вопроса
Konstantin Romanenko
на первом nginx смотреть заполнен ли $proxy_add_x_...

В моем действии сейчас только последний nginx в цепочке, к нему приходят запросы, как понимаю, в x-forward-for - массив адресов, включая адрес клиента, и адреса прокси серверов Сама переменная remote_addr стоит пустой Вот я пытаюсь понять, как взять первый элемент x-forward-for UPD Точнее, наверное, последний, ведь нужен клиент ,верно?

Восемь-Ног Автор вопроса

в kubernetes да, в поде докер крутится

Восемь Ног
в kubernetes да, в поде докер крутится

ага, необходимо для сервиса устанавливать параметр доступности, секунду...

Восемь Ног
в kubernetes да, в поде докер крутится

у меня контейнеры крутятся в docker swarm и была аналогичная проблема, но решается изменением настройки deploy: service: image: ... deploy: mode: global думаю в кубе аналогичный параметр есть

Восемь Ног
В моем действии сейчас только последний nginx в це...

В x-forwarded-for может быть написано что угодно. Цепляться к первому вхождению можно только в том случае, если вы сами этот заголовок пишите

Восемь-Ног Автор вопроса
Anton Noginov
В x-forwarded-for может быть написано что угодно. ...

Спасибо Кстати Переменная proxy_protocol_addr, из которой хотелось бы взять адрес клиента пустая, нужно смотреть предыдущий прокси?

какой именно, $x_forward_for? ну так её "из коробки" действительно нет

Похожие вопросы

Обсуждают сегодня

1. https://www.kaggle.com/code/ahmadrezagholami2001/housing-estimation-linear-regression 2. https://www.kaggle.com/code/ahmadrezagholami2001/uncovering-quality-in-wines-logis...
Ahmadreza
1
Hi! Could you please upvote my new notebook? thanks a lot. https://www.kaggle.com/code/melissamonfared/anime-character-generation-dsgan-gan
məru
4
upvote plz https://www.kaggle.com/code/bassetkerouche/swapping-face?scriptVersionId=207300096
benkerrouche Statoinary
1
-- Привет всем. -- Есть csv, проблема в том что он содержит очень много повторов по столбцам и по строкам. -- Решил перекинуть это в базу данных, чтобы было проще. Но я не ша...
Oleg Ivanov
1
Как считаете - вопрос на собесе: «Как быстрее всего запустить ec2 машину в aws (в чистом аккаунте) и показать вывод от любой команды с нее» не очень ли сложный для условного м...
Sergey
50
Господа, у меня вопрос. Что вообще такое этот ваш data science и data scientists? А то гуглю, а мне какую-то расплывчатую фигню говорят.
Inkosta
44
Исходя из ваших комментариев, получается, что чтобы получить марты в CH из данных в PG, неправильно тянуть сырые данные в CH и там их обрабатывать, лепить справочники и джойни...
unhingedlunatic
42
Hi could you please help me with my two new projects? https://www.kaggle.com/code/hesankazemnia/rice-image-classification-cnn-pytorch https://www.kaggle.com/code/hesankazemnia...
Hesan
6
hi, Can you upvote? https://www.kaggle.com/code/durjoychandrapaul/rag-q-a-system-by-langchain-huggingface-for-pdf?scriptVersionId=204704280
A
1
Could you upvote and comment please? https://www.kaggle.com/code/tatianapetrushkevich/beginner-images https://www.kaggle.com/code/tatianapetrushkevich/python-for-beginners1 ...
Tazziyana
7
Карта сайта