Maxim Dounin Wrote:
-------------------------------------------------------
> создания чудовищных монстров
Так вы посмотрите http://forum.nginx.org/read.php?21,245412,245430#msg-245430
то что хочется сделать, как раз выглядит наиболее изящным решением, а в условиях часто меняющихся приложений и обеспечения доступа к ним позволит только сделать всю конфигурацию более легкой, прозрачной и позволит освободить некоторое количество времени для решения других задач
> Для того, чтобы избегать повторов - в nginx'е есть наследование
> конфигурации, а равно директива include. Если этого нехватает -
> обычно правильнее взять в руки любимый шаблонизатор, а не пытаться
> то же самое сделать с помощью условных проверок в процессе
> обработки запросов.
include во всю используется, про условные проверки я в первом посте написал "не уверен что это правильное решение" и "этом варианте нельзя указать проксирование к контексту ... nginx пишет ошибку"
Очень хочется иметь аналогичные возможности как было показано в if с возможностью проксирования контеста, а не от корня.
Про то, что вы мне говорите
- сделать блок server {} с location {} для http
- сделать блок server {} с location {} для https
изначально было понятно, что так можно.
Но вопрос в том, как проксировать одно приложение по http и https в одном блоке server {} и одном блоке location {} (без дублей), учитавая, что приложение на бэкэенде может быть доступно как в корне так и по контекстному пути, а порты отличаются от 80 и 443.
Согласитесь, N количество блоков server {} и N количество блоков location {} проще изменить, меньше вероятности допустить ошибки и понимать легче, чем N*2 количество блоков server {} и N*2 количество блоков location {} сделанных отдельно для http и для https.