Welcome! Log In Create A New Profile

Advanced

Re: Почему пустой if ломает работу try files?

Илья Шипицин
September 30, 2020 01:50AM
читаемость штука субъективная и скорее предмет холиваров. уверен, найдется
непустое множество людей, для которых ваш вариант нечитаемый.

наверное, хороший ответ про недостаток читаемости может заключаться в том,
что конфиг можно сопровождать комментариями, улучшающими читаемость.

а добавить кусок кода, который будет делать примерно то, что можно сделать
без него, это усложнение на ровном месте и потенциальный источник ошибок

ср, 30 сент. 2020 г. в 10:44, Alexey Galygin <mif@me.com>:

> да, примеры были из habr, но и там к статье были претензии к map-решению
> + я специально усложнил пример регулярными выражениями
>
> поэтому указанный map это не эквивалент
>
> во вторых плохо читаемый хак и издевательство над линейной логикой
> зачем такие костыли, если можно доделать нормальный if?
>
>
>
> On 30 Sep 2020, at 05:14, fox <red-fox0@ya.ru> wrote:
>
> Троллишь?
>
> map "$http_user_agent:$method:$uri" $block {
> "HackYou:POST:/admin/some/url" "1";
> }
>
> if ($block) {
> return 403;
> }
>
>
> 30.09.2020 02:24, Alexey Galygin пишет:
>
> не вкусовщина
> часто очень не хватает простейших and/&& и or/||
>
> вот чтобы такое не писать:
>
> if($http_user_agent~ "HackYou"){ set$block"A"; } if($method= "POST") {
> set$block"${block}B"; } if($uri~ “^/admin/some/url") {
> set$block"${block}C"; } if($block= "ABC") { return403; }
>
> vs условно:
>
> if/eif ($http_user_agent~ “HackYou” && $method= “POST” && $uri~
> “^/admin/some/url”) {
> return403;
> }
>
>
> On 29 Sep 2020, at 21:49, Илья Шипицин <chipitsine@gmail.com
> <mailto:chipitsine@gmail.com <chipitsine@gmail.com>>> wrote:
>
> это вкусовщина же. вы готовы писать "eif", чтобы выразить свою мысль в
> определенном синтаксисе.
> сейчас вы точно так же выражаете свою мысль через map-ы.
>
> по сути просто диалекты языка
>
> вт, 29 сент. 2020 г. в 22:41, Alexey Galygin <mif@me.com
> <mailto:mif@me.com <mif@me.com>>>:
>
> иногда трудно обойтись без дополнительной логики,
> которую ради такой мелочи отдавать на backend грустно
>
> и речь про улучшение поведения исключительно с обратной совместимостью
>
> если совсем никак, то можно добавить условно extended if — eif
>
>
> On 29 Sep 2020, at 19:47, fox <red-fox0@ya.ru
>
> <mailto:red-fox0@ya.ru <red-fox0@ya.ru>>> wrote:
>
>
> 1) может, потому что конфиг - это не язык программирования?
>
> 2) изменение поведения сломает тысячи существующих систем.
>
>
> 29.09.2020 23:31, Alexey Galygin пишет:
>
> присоединяюсь к вопросу:
>
> почему бы не сделать if нормальным? чтобы без артефактов… и
>
> немного мощнее
>
>
> нам вот тоже приходится делать по несколько map, чтобы логику
>
> чуть более сложную построить…
>
> и это ужас
>
> On 29 Sep 2020, at 19:29, Sergey Kandaurov <pluknet@nginx.com
>
> <mailto:pluknet@nginx.com <pluknet@nginx.com>>> wrote:
>
>
>
> On 29 Sep 2020, at 17:12, Ilya Evseev
>
> <nginx-forum@forum.nginx.org <mailto:nginx-forum@forum.nginx.org
> <nginx-forum@forum.nginx.org>>>
> wrote:
>
>
> Имеется nginx 1.19.2 со следующей настройкой:
>
> server {
> location / {
> if ($http_user_agent ~ "TestAgent") { }
> try_files $uri $uri/ /index.html;
> }
> }
>
> Почему попадание в if меняет логику работы последующего
>
> try_files?
>
>
> https://wiki.nginx.org/IfIsEvil
>
> --
> Sergey Kandaurov
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org <mailto:nginx-ru@nginx.org <nginx-ru@nginx.org>>
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org <mailto:nginx-ru@nginx.org <nginx-ru@nginx.org>>
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org <mailto:nginx-ru@nginx.org <nginx-ru@nginx.org>>
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org <mailto:nginx-ru@nginx.org <nginx-ru@nginx.org>>
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org <mailto:nginx-ru@nginx.org <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
>
>
> _______________________________________________
> 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
Subject Author Posted

Re: Почему пустой if ломает работу try files?

Sergey Kandaurov September 29, 2020 12:30PM

Re: Почему пустой if ломает работу try files?

Alexey Galygin September 29, 2020 12:32PM

Re: Почему пустой if ломает работу try files?

fox September 29, 2020 12:50PM

Re: Почему пустой if ломает работу try files?

Alexey Galygin September 29, 2020 01:42PM

Re: Почему пустой if ломает работу try files?

Илья Шипицин September 29, 2020 02:50PM

Re: Почему пустой if ломает работу try files?

Alexey Galygin September 29, 2020 03:26PM

Re: Почему пустой if ломает работу try files?

fox September 29, 2020 10:16PM

Re: Почему пустой if ломает работу try files?

Alexey Galygin September 30, 2020 01:46AM

Re: Почему пустой if ломает работу try files?

Илья Шипицин September 30, 2020 01:50AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 51
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready