Раз уж зашел разговор о realip....
Максим, а возможно ли указать 2 заголовка realip_header ?
2017-06-19 14:15 GMT+02:00 Maxim Dounin <mdounin@mdounin.ru>:
> Hello!
>
> On Sun, Jun 18, 2017 at 07:31:05AM +0300, Иван wrote:
>
> > Здравствуйте!
> >
> > В конструкции
> >
> > location /login/
> > set_real_ip_from proxy_IP;
> > if ($block_agent) {
> > return 403;
> > }
> > }
> >
> > Всё, что попадает в блок if ($block_agent == 1), в логи пишется с
> $remote_addr
> > проксирующего сервера (proxy_IP), то есть set_real_ip_from не
> отрабатывает.
> > set_real_ip_from поместить в блок include nginx не дает. Пока что решил
> > проблему меняя формат логов для в блоке if, но что это, баг\фича? И
> можно ли
> > исправить?
>
> Это фича. Если директива set_real_ip_from задана на уровне
> location, то замена адреса происходит после выбора конфигурации, в
> котором будет обрабатываться запрос, перед работой модулей контроля
> доступа. А в конфигурации выше - ошибка возвращается с помощью
> директив модуля rewrite, на этапе "выбора конфигурации по
> условию" (см. http://nginx.org/ru/docs/http/ngx_http_rewrite_module.html).
> В результате ошибка 403 случается до того, как адрес клиента
> заменён модулем realip, и в логи попадает исходный ip.
>
> Чтобы подобных сюрпризов не было - правильнее всего задать
> set_real_ip_from на уровне server, тогда замена ip-адреса клиента
> будет происходить сразу после чтения запроса.
>
> --
> Maxim Dounin
> http://nginx.org/
> _______________________________________________
> 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