On 16.10.2013 18:20, Maxim Dounin wrote:

кстати, если добавить директиву handler, которая работает после фазы
try_files, то можно будет писать конфиг nginx без лишней избыточности:

location /admin {
    satisfy any;
    set $file ".htpasswd";
    auth_basic_user_file /path/to/$file;
    allow 10.1.1.1;
    deny all;
    handler @default;
}

Можно добавить множество новых директив.  Но, как показывает
практика, это не избавляет от старых проблем, а только добавляет
новых.  Не надо умножать сущности без необходимости.

а какие новые проблемы добавятся в этом случае?

сейчас весь блок обработки статики и динамики -
надо будет копировать в конфиге несколько раз,
и при внесении правок - не забыть везде поправить.

без новой директивы handler устранить избыточность конфига
можно только с помощью директивы "include", - но тогда станет
еще хуже, конфиг server`а нельзя будет посмотреть в одном файле.

по поводу правила "не надо умножать сущности без необходимости",
это правило работает не всегда. например, для того чтобы вернуть
какой-то код и текст вполне достаточно было доработать директиву
return, чтобы она понимала синтаксис вида return 200 "secret\n";
- здесь нет необходимости создавать новый модуль a la empty gif.

--
Best regards,
 Gena

_______________________________________________
nginx-ru mailing list
[email protected]
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить