On Tue, 26 Dec 2006, [UTF-8] Дмитрий Леоненко wrote:
Игорь, а если у меня стоят 2 nginx в цепочке, а за ними апач. Как мне от
первого nginx через второй пробросить ip реального клиента апачу?
Понятно, как можно передать заголовок x-forwarded-for, там есть переменная
соответствующая, но как передать заголовок x-real-ip ? то есть что-то
похожее на:
proxy_set_header X-Real-IP $proxy_add_x_real_ip;
На первом:
proxy_set_header X-Real-IP $remote_addr;
Нв втором ничего не нужно - X-Real-IP уйдёт и так, но нужно быть увереным,
что напрямую ко второму nginx'у ходят только из доверенным мест, которые
не могут сами поставить X-Real-IP.
Если же доступ огранить нельзя, то можно воспользоваться
http://sysoev.ru/nginx/docs/http/ngx_http_realip_module.html
и поставить на втором nginx'е примерно следующее:
set_real_ip_from 192.168.2.1; # first nginx
proxy_set_header X-Real-IP $remote_addr;
Игорь Сысоев
http://sysoev.ru