Re: proxy_bind, макросы и др

Softer sft.nik на gmail.com
Вт Ноя 17 13:52:22 UTC 2015


Добрый день.

А чем так плохо?

location ~* ^/(one|two)/
{
 proxy_pass http://one;
 proxy_set_header ...
 ....
 ....
}

17 ноября 2015 г., 15:43 пользователь kpoxa <kpoxa на kpoxa.net> написал:

> Добрый день.
>
> proxy_bind в модуле stream не поддерживает работу с переменными, как и
> proxy_pass, что хотелось бы иметь использовать, например для ав тестов,
> определить переменную и через нее определять или куда отправлять коннект,
> или с какого адреса, иногда для тестов этого хватает.
>
> В конфигах nginx часто приходится повторять одинаковые куски конфига,
> например выбор апстрима по локейшену, с настройках пропускаемых заголовков,
> что порождает большие конфиги или такого вида:
>
> location /one/ {
>  proxy_pass http://one;
>  proxy_set_header ...
>  ....
>  ....
>  access_log one.log;
> }
>
> location /two/ {
>  proxy_pass http://one;
>  proxy_set_header ...
>  ....
>  ....
>  access_log one.log;
> }
>
> или такого
> location /one/ {
>   include one.conf;
> }
> location /two/ {
>   include one.conf;
> }
>
> первый вариант плохо читаемый в виду своей громосткости, второй из-за
> того, что не видно, что записано во включаемом файле.
>
>
> у меня есть два предложения, как можно синтаксически это реализовать по
> другому, первый вариант это директива
> location_list (
>   /one/
>   /two/
> ) {
>  proxy_pass http://one;
>  proxy_set_header ...
>  ....
>  ....
>  access_log one.log;
>
> }
>
> второй это явная возможность вызова именованных локейшенов, например
> location @one {
>  proxy_pass http://one;
>  proxy_set_header ...
>  ....
>  ....
>  access_log one.log;
> }
> location /one/ {
>   go @one;
> }
>
> location /two/ {
>   go @one;
> }
>
>
> буду рад комментам и разумной критике :)
> ---
> Рустам Нарманов.
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>



-- 
--------------------------------------------------------------------------------
С ув, Никита Александрович
Jabber: a на sft.in.ua
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20151117/81d20217/attachment.html>


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