Re: режим dry run для "return 421"

Oleg A. Mamontov oleg на mamontov.net
Вт Дек 22 18:22:44 UTC 2020


On Tue, Dec 22, 2020 at 06:17:13PM +0500, Илья Шипицин wrote:
>грубо - сделать все то же самое, что было бы без "return 421" + залогировать
>попытку вернуть.
>классический dry run

Возможно, вам подойдет дополнительный access_log по условию:
---
map $host $condition {
     default         1;
     some_condition  0;
}
...
location / {
   proxy_pass http://upstream;

   access_log /var/log/my.log;
   access_log /var/log/conditional.log if=$condition;
}
---

>error_page 421  = @handler_421;
>
>location / {
>   if ($some_condition != $host) { return 421; }
>
>   proxy_pass http://upstream;
>
>   access_log /var/log/my.log;
>}
>
>location @handler_421 {
>   proxy_pass http://upstream;
>
>   access_log /var/log/my.log;
>   access_log /var/log/additional.log special_format;
>}
>
>
>
>On Tue, Dec 22, 2020, 5:32 PM Evgeniy Berdnikov <bgx at protva.ru> wrote:
>
>    On Tue, Dec 22, 2020 at 04:52:36PM +0500, Илья Шипицин wrote:
>    >    привет!
>    >    рассматриваем вариант
>    >    if ($some_condition != $host) { return 421; }
>    >    вопрос - как можно по дешевому в этом месте сделать "логирование
>    вместо
>    >    return" ?
>
>     return 302 <logger-url>
>     ?
>
>     Вообще, что значит "вместо"? Какой-то ответ на запрос должен быть.
>     Логгирование это не ответ, а этап обработки запроса.
>    --
>     Eugene Berdnikov
>    _______________________________________________
>    nginx-ru mailing list
>    nginx-ru at nginx.org
>    http://mailman.nginx.org/mailman/listinfo/nginx-ru
>

>_______________________________________________
>nginx-ru mailing list
>nginx-ru at nginx.org
>http://mailman.nginx.org/mailman/listinfo/nginx-ru


-- 
Cheers,
Oleg A. Mamontov

mailto: oleg at mamontov.net

skype:  lonerr11
cell:   +7 (903) 798-1352


Подробная информация о списке рассылки nginx-ru