On Monday, 1 January 2018 07:34:48 MSK gz wrote: > Знатоки, поясните пожалуйста, с какой целью в nginx сделано так, что > add_header и proxy_set_header «наследуются с предыдущего уровня при условии, > что на данном уровне не описаны свои директивы»? > > Это же ужасно неудобно — хочется задать ряд общих заголовков на уровне > http/server, а в location'ах добавлять отдельные заголовки. > Стоит прозевать и установить единственный заголовок в location'е — > отваливаются все вышеустановленные. > > Наверное, у такого решения есть большие преимущества, но прояснить их для > себя не могу. >
1. Это не отличается от всех остальных директив в nginx, т.е. это единое правило, делающее конфигурацию единообразной. При этом, если раньше какую-то директиву можно было задать только один раз, а позже стало возможным описывать несколько таких директив, то существующие конфигурации от этого не ломаются, ибо правило наследования, что у одной директивы, что у нескольких - одниковое. 2. А про остальное рассказывает Игорь: https://www.youtube.com/watch?v=fcG-7k20oG8 Если кратко, это делает конфигурацию однозначной. Работает ровно то, что видите в конкретном блоке. Вам не нужно просматривая все уровни вложенности и в уме суммировать списки директив. -- Валентин Бартенев _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru