Re: Директива map и regex capturing groups не дружат

Alex Vorona alex на vorona.com.ua
Пт Окт 21 07:02:59 UTC 2016


Hello,

20.10.16 13:30, YuriV wrote:
> Всем привет.
> Наверное тема баянистая, но что-то никак не выходит каменный цветок :(
> Итак, есть nginx 1.8.0 или 1.10.2, ну и регулярка в мапе не работает
> нивкакую:
>
> map $http_host $new_host {
>         ~*^resources\.(?P<dom1>.+)               res.$dom1;
>         ~*^(www\.)?(?P<dom>.+)                   proxy.$dom;
>  default $http_host; }
>
> Читал многие форумы, у некоторых почему-то именованные группы работали. Но
> тут хоть убейся - не работает и все - вместо переменной просто строка $dom
> или $dom1 подставляется.

Копипаст map из вашего сообщения и тестовый location	
	location = /test1 {
	    return 200 "$new_host";
	}

curl -HHost:www.ya.ru 127.1/test1
proxy.ya.ru

curl -HHost:resources.ya.ru 127.1/test1
res.ya.ru

nginx version: nginx/1.11.4



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